KILLED proof of input_cVs1TapZLk.trs # AProVE Commit ID: 5b976082cb74a395683ed8cc7acf94bd611ab29f fuhs 20230524 unpublished The Runtime Complexity (parallel-innermost) of the given CpxTRS could be proven to be BOUNDS(1, INF). (0) CpxTRS (1) RenamingProof [BOTH BOUNDS(ID, ID), 0 ms] (2) CpxTRS (3) RelTrsToTrsProof [UPPER BOUND(ID), 0 ms] (4) CpxTRS (5) CpxTrsToCdtProof [UPPER BOUND(ID), 0 ms] (6) CdtProblem (7) CdtToCpxRelTrsProof [BOTH BOUNDS(ID, ID), 0 ms] (8) CpxRelTRS (9) RenamingProof [BOTH BOUNDS(ID, ID), 0 ms] (10) CpxRelTRS (11) TypeInferenceProof [BOTH BOUNDS(ID, ID), 0 ms] (12) typed CpxTrs (13) OrderProof [LOWER BOUND(ID), 13 ms] (14) typed CpxTrs (15) RewriteLemmaProof [LOWER BOUND(ID), 410 ms] (16) BEST (17) proven lower bound (18) LowerBoundPropagationProof [FINISHED, 0 ms] (19) BOUNDS(n^1, INF) (20) typed CpxTrs (21) RewriteLemmaProof [LOWER BOUND(ID), 55 ms] (22) typed CpxTrs (23) RewriteLemmaProof [LOWER BOUND(ID), 1241 ms] (24) typed CpxTrs (25) RewriteLemmaProof [LOWER BOUND(ID), 29 ms] (26) BOUNDS(1, INF) (27) CpxTrsToCdtProof [UPPER BOUND(ID), 0 ms] (28) CdtProblem (29) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (30) CdtProblem (31) CdtUsableRulesProof [BOTH BOUNDS(ID, ID), 0 ms] (32) CdtProblem (33) CdtToCpxRelTrsProof [BOTH BOUNDS(ID, ID), 0 ms] (34) CpxRelTRS (35) RelTrsToTrsProof [UPPER BOUND(ID), 0 ms] (36) CpxTRS (37) RelTrsToWeightedTrsProof [BOTH BOUNDS(ID, ID), 0 ms] (38) CpxWeightedTrs (39) TypeInferenceProof [BOTH BOUNDS(ID, ID), 0 ms] (40) CpxTypedWeightedTrs (41) CompletionProof [UPPER BOUND(ID), 0 ms] (42) CpxTypedWeightedCompleteTrs (43) NarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (44) CpxTypedWeightedCompleteTrs (45) CpxTypedWeightedTrsToRntsProof [UPPER BOUND(ID), 0 ms] (46) CpxRNTS (47) InliningProof [UPPER BOUND(ID), 163 ms] (48) CpxRNTS (49) SimplificationProof [BOTH BOUNDS(ID, ID), 0 ms] (50) CpxRNTS (51) CpxRntsAnalysisOrderProof [BOTH BOUNDS(ID, ID), 0 ms] (52) CpxRNTS (53) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (54) CpxRNTS (55) IntTrsBoundProof [UPPER BOUND(ID), 220 ms] (56) CpxRNTS (57) IntTrsBoundProof [UPPER BOUND(ID), 0 ms] (58) CpxRNTS (59) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (60) CpxRNTS (61) IntTrsBoundProof [UPPER BOUND(ID), 239 ms] (62) CpxRNTS (63) IntTrsBoundProof [UPPER BOUND(ID), 115 ms] (64) CpxRNTS (65) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (66) CpxRNTS (67) IntTrsBoundProof [UPPER BOUND(ID), 209 ms] (68) CpxRNTS (69) IntTrsBoundProof [UPPER BOUND(ID), 72 ms] (70) CpxRNTS (71) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (72) CpxRNTS (73) IntTrsBoundProof [UPPER BOUND(ID), 220 ms] (74) CpxRNTS (75) IntTrsBoundProof [UPPER BOUND(ID), 5 ms] (76) CpxRNTS (77) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (78) CpxRNTS (79) IntTrsBoundProof [UPPER BOUND(ID), 202 ms] (80) CpxRNTS (81) IntTrsBoundProof [UPPER BOUND(ID), 104 ms] (82) CpxRNTS (83) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (84) CpxRNTS (85) IntTrsBoundProof [UPPER BOUND(ID), 8955 ms] (86) CpxRNTS (87) IntTrsBoundProof [UPPER BOUND(ID), 370 ms] (88) CpxRNTS (89) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (90) CpxRNTS (91) IntTrsBoundProof [UPPER BOUND(ID), 916 ms] (92) CpxRNTS (93) IntTrsBoundProof [UPPER BOUND(ID), 310 ms] (94) CpxRNTS (95) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (96) CpxRNTS (97) IntTrsBoundProof [UPPER BOUND(ID), 1359 ms] (98) CpxRNTS (99) IntTrsBoundProof [UPPER BOUND(ID), 750 ms] (100) CpxRNTS (101) CompletionProof [UPPER BOUND(ID), 0 ms] (102) CpxTypedWeightedCompleteTrs (103) CpxTypedWeightedTrsToRntsProof [UPPER BOUND(ID), 0 ms] (104) CpxRNTS (105) CdtRuleRemovalProof [UPPER BOUND(ADD(n^1)), 131 ms] (106) CdtProblem (107) CdtRuleRemovalProof [UPPER BOUND(ADD(n^1)), 28 ms] (108) CdtProblem (109) CdtRuleRemovalProof [UPPER BOUND(ADD(n^2)), 130 ms] (110) CdtProblem (111) CdtKnowledgeProof [BOTH BOUNDS(ID, ID), 0 ms] (112) CdtProblem (113) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (114) CdtProblem (115) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (116) CdtProblem (117) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (118) CdtProblem (119) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (120) CdtProblem (121) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (122) CdtProblem (123) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (124) CdtProblem (125) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (126) CdtProblem (127) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (128) CdtProblem (129) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (130) CdtProblem (131) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (132) CdtProblem (133) CdtKnowledgeProof [BOTH BOUNDS(ID, ID), 0 ms] (134) CdtProblem (135) CdtRuleRemovalProof [UPPER BOUND(ADD(n^1)), 20 ms] (136) CdtProblem (137) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (138) CdtProblem (139) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (140) CdtProblem (141) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (142) CdtProblem (143) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (144) CdtProblem (145) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (146) CdtProblem (147) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (148) CdtProblem (149) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (150) CdtProblem (151) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (152) CdtProblem (153) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (154) CdtProblem (155) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (156) CdtProblem (157) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (158) CdtProblem (159) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (160) CdtProblem (161) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (162) CdtProblem (163) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (164) CdtProblem (165) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (166) CdtProblem (167) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (168) CdtProblem (169) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (170) CdtProblem (171) CdtRewritingProof [BOTH BOUNDS(ID, ID), 0 ms] (172) CdtProblem (173) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (174) CdtProblem (175) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (176) CdtProblem (177) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (178) CdtProblem (179) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (180) CdtProblem (181) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (182) CdtProblem (183) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (184) CdtProblem (185) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 6 ms] (186) CdtProblem (187) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (188) CdtProblem (189) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (190) CdtProblem (191) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 47 ms] (192) CdtProblem (193) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 25 ms] (194) CdtProblem (195) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (196) CdtProblem (197) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (198) CdtProblem (199) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (200) CdtProblem (201) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (202) CdtProblem (203) RelTrsToWeightedTrsProof [UPPER BOUND(ID), 0 ms] (204) CpxWeightedTrs (205) TypeInferenceProof [BOTH BOUNDS(ID, ID), 0 ms] (206) CpxTypedWeightedTrs (207) CompletionProof [UPPER BOUND(ID), 0 ms] (208) CpxTypedWeightedCompleteTrs (209) CpxTypedWeightedTrsToRntsProof [UPPER BOUND(ID), 0 ms] (210) CpxRNTS (211) CompletionProof [UPPER BOUND(ID), 0 ms] (212) CpxTypedWeightedCompleteTrs (213) NarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (214) CpxTypedWeightedCompleteTrs (215) CpxTypedWeightedTrsToRntsProof [UPPER BOUND(ID), 0 ms] (216) CpxRNTS (217) InliningProof [UPPER BOUND(ID), 141 ms] (218) CpxRNTS (219) SimplificationProof [BOTH BOUNDS(ID, ID), 6 ms] (220) CpxRNTS (221) CpxRntsAnalysisOrderProof [BOTH BOUNDS(ID, ID), 1 ms] (222) CpxRNTS (223) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (224) CpxRNTS (225) IntTrsBoundProof [UPPER BOUND(ID), 294 ms] (226) CpxRNTS (227) IntTrsBoundProof [UPPER BOUND(ID), 4 ms] (228) CpxRNTS (229) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (230) CpxRNTS (231) IntTrsBoundProof [UPPER BOUND(ID), 166 ms] (232) CpxRNTS (233) IntTrsBoundProof [UPPER BOUND(ID), 107 ms] (234) CpxRNTS (235) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (236) CpxRNTS (237) IntTrsBoundProof [UPPER BOUND(ID), 88 ms] (238) CpxRNTS (239) IntTrsBoundProof [UPPER BOUND(ID), 149 ms] (240) CpxRNTS (241) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (242) CpxRNTS (243) IntTrsBoundProof [UPPER BOUND(ID), 1270 ms] (244) CpxRNTS (245) IntTrsBoundProof [UPPER BOUND(ID), 102 ms] (246) CpxRNTS (247) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (248) CpxRNTS (249) IntTrsBoundProof [UPPER BOUND(ID), 1536 ms] (250) CpxRNTS (251) IntTrsBoundProof [UPPER BOUND(ID), 146 ms] (252) CpxRNTS ---------------------------------------- (0) Obligation: The Runtime Complexity (parallel-innermost) of the given CpxTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: from(X) -> cons(X, n__from(s(X))) sel(0, cons(X, XS)) -> X sel(s(N), cons(X, XS)) -> sel(N, activate(XS)) minus(X, 0) -> 0 minus(s(X), s(Y)) -> minus(X, Y) quot(0, s(Y)) -> 0 quot(s(X), s(Y)) -> s(quot(minus(X, Y), s(Y))) zWquot(XS, nil) -> nil zWquot(nil, XS) -> nil zWquot(cons(X, XS), cons(Y, YS)) -> cons(quot(X, Y), n__zWquot(activate(XS), activate(YS))) from(X) -> n__from(X) zWquot(X1, X2) -> n__zWquot(X1, X2) activate(n__from(X)) -> from(X) activate(n__zWquot(X1, X2)) -> zWquot(X1, X2) activate(X) -> X S is empty. Rewrite Strategy: PARALLEL_INNERMOST ---------------------------------------- (1) RenamingProof (BOTH BOUNDS(ID, ID)) Renamed function symbols to avoid clashes with predefined symbol. ---------------------------------------- (2) Obligation: The Runtime Complexity (parallel-innermost) of the given CpxTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: from(X) -> cons(X, n__from(s(X))) sel(0', cons(X, XS)) -> X sel(s(N), cons(X, XS)) -> sel(N, activate(XS)) minus(X, 0') -> 0' minus(s(X), s(Y)) -> minus(X, Y) quot(0', s(Y)) -> 0' quot(s(X), s(Y)) -> s(quot(minus(X, Y), s(Y))) zWquot(XS, nil) -> nil zWquot(nil, XS) -> nil zWquot(cons(X, XS), cons(Y, YS)) -> cons(quot(X, Y), n__zWquot(activate(XS), activate(YS))) from(X) -> n__from(X) zWquot(X1, X2) -> n__zWquot(X1, X2) activate(n__from(X)) -> from(X) activate(n__zWquot(X1, X2)) -> zWquot(X1, X2) activate(X) -> X S is empty. Rewrite Strategy: PARALLEL_INNERMOST ---------------------------------------- (3) RelTrsToTrsProof (UPPER BOUND(ID)) transformed relative TRS to TRS ---------------------------------------- (4) Obligation: The Runtime Complexity (parallel-innermost) of the given CpxTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: from(X) -> cons(X, n__from(s(X))) sel(0, cons(X, XS)) -> X sel(s(N), cons(X, XS)) -> sel(N, activate(XS)) minus(X, 0) -> 0 minus(s(X), s(Y)) -> minus(X, Y) quot(0, s(Y)) -> 0 quot(s(X), s(Y)) -> s(quot(minus(X, Y), s(Y))) zWquot(XS, nil) -> nil zWquot(nil, XS) -> nil zWquot(cons(X, XS), cons(Y, YS)) -> cons(quot(X, Y), n__zWquot(activate(XS), activate(YS))) from(X) -> n__from(X) zWquot(X1, X2) -> n__zWquot(X1, X2) activate(n__from(X)) -> from(X) activate(n__zWquot(X1, X2)) -> zWquot(X1, X2) activate(X) -> X S is empty. Rewrite Strategy: PARALLEL_INNERMOST ---------------------------------------- (5) CpxTrsToCdtProof (UPPER BOUND(ID)) Converted Cpx (relative) TRS with rewrite strategy PARALLEL_INNERMOST to CDT ---------------------------------------- (6) Obligation: Complexity Dependency Tuples Problem Rules: from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) sel(0, cons(z0, z1)) -> z0 sel(s(z0), cons(z1, z2)) -> sel(z0, activate(z2)) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 Tuples: FROM(z0) -> c FROM(z0) -> c1 SEL(0, cons(z0, z1)) -> c2 SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) MINUS(z0, 0) -> c4 MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(0, s(z0)) -> c6 QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) ZWQUOT(z0, nil) -> c8 ZWQUOT(nil, z0) -> c9 ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ZWQUOT(z0, z1) -> c13 ACTIVATE(n__from(z0)) -> c14(FROM(z0)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ACTIVATE(z0) -> c16 S tuples: FROM(z0) -> c FROM(z0) -> c1 SEL(0, cons(z0, z1)) -> c2 SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) MINUS(z0, 0) -> c4 MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(0, s(z0)) -> c6 QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) ZWQUOT(z0, nil) -> c8 ZWQUOT(nil, z0) -> c9 ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ZWQUOT(z0, z1) -> c13 ACTIVATE(n__from(z0)) -> c14(FROM(z0)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ACTIVATE(z0) -> c16 K tuples:none Defined Rule Symbols: from_1, sel_2, minus_2, quot_2, zWquot_2, activate_1 Defined Pair Symbols: FROM_1, SEL_2, MINUS_2, QUOT_2, ZWQUOT_2, ACTIVATE_1 Compound Symbols: c, c1, c2, c3_2, c4, c5_1, c6, c7_2, c8, c9, c10_1, c11_1, c12_1, c13, c14_1, c15_1, c16 ---------------------------------------- (7) CdtToCpxRelTrsProof (BOTH BOUNDS(ID, ID)) Converted S to standard rules, and D \ S as well as R to relative rules. ---------------------------------------- (8) Obligation: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(n^1, INF). The TRS R consists of the following rules: FROM(z0) -> c FROM(z0) -> c1 SEL(0, cons(z0, z1)) -> c2 SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) MINUS(z0, 0) -> c4 MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(0, s(z0)) -> c6 QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) ZWQUOT(z0, nil) -> c8 ZWQUOT(nil, z0) -> c9 ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ZWQUOT(z0, z1) -> c13 ACTIVATE(n__from(z0)) -> c14(FROM(z0)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ACTIVATE(z0) -> c16 The (relative) TRS S consists of the following rules: from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) sel(0, cons(z0, z1)) -> z0 sel(s(z0), cons(z1, z2)) -> sel(z0, activate(z2)) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 Rewrite Strategy: INNERMOST ---------------------------------------- (9) RenamingProof (BOTH BOUNDS(ID, ID)) Renamed function symbols to avoid clashes with predefined symbol. ---------------------------------------- (10) Obligation: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(n^1, INF). The TRS R consists of the following rules: FROM(z0) -> c FROM(z0) -> c1 SEL(0', cons(z0, z1)) -> c2 SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) MINUS(z0, 0') -> c4 MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(0', s(z0)) -> c6 QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) ZWQUOT(z0, nil) -> c8 ZWQUOT(nil, z0) -> c9 ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ZWQUOT(z0, z1) -> c13 ACTIVATE(n__from(z0)) -> c14(FROM(z0)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ACTIVATE(z0) -> c16 The (relative) TRS S consists of the following rules: from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) sel(0', cons(z0, z1)) -> z0 sel(s(z0), cons(z1, z2)) -> sel(z0, activate(z2)) minus(z0, 0') -> 0' minus(s(z0), s(z1)) -> minus(z0, z1) quot(0', s(z0)) -> 0' quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 Rewrite Strategy: INNERMOST ---------------------------------------- (11) TypeInferenceProof (BOTH BOUNDS(ID, ID)) Inferred types. ---------------------------------------- (12) Obligation: Innermost TRS: Rules: FROM(z0) -> c FROM(z0) -> c1 SEL(0', cons(z0, z1)) -> c2 SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) MINUS(z0, 0') -> c4 MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(0', s(z0)) -> c6 QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) ZWQUOT(z0, nil) -> c8 ZWQUOT(nil, z0) -> c9 ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ZWQUOT(z0, z1) -> c13 ACTIVATE(n__from(z0)) -> c14(FROM(z0)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ACTIVATE(z0) -> c16 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) sel(0', cons(z0, z1)) -> z0 sel(s(z0), cons(z1, z2)) -> sel(z0, activate(z2)) minus(z0, 0') -> 0' minus(s(z0), s(z1)) -> minus(z0, z1) quot(0', s(z0)) -> 0' quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 Types: FROM :: 0':s -> c:c1 c :: c:c1 c1 :: c:c1 SEL :: 0':s -> cons:nil:n__from:n__zWquot -> c2:c3 0' :: 0':s cons :: 0':s -> cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot c2 :: c2:c3 s :: 0':s -> 0':s c3 :: c2:c3 -> c14:c15:c16 -> c2:c3 activate :: cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot ACTIVATE :: cons:nil:n__from:n__zWquot -> c14:c15:c16 MINUS :: 0':s -> 0':s -> c4:c5 c4 :: c4:c5 c5 :: c4:c5 -> c4:c5 QUOT :: 0':s -> 0':s -> c6:c7 c6 :: c6:c7 c7 :: c6:c7 -> c4:c5 -> c6:c7 minus :: 0':s -> 0':s -> 0':s ZWQUOT :: cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot -> c8:c9:c10:c11:c12:c13 nil :: cons:nil:n__from:n__zWquot c8 :: c8:c9:c10:c11:c12:c13 c9 :: c8:c9:c10:c11:c12:c13 c10 :: c6:c7 -> c8:c9:c10:c11:c12:c13 c11 :: c14:c15:c16 -> c8:c9:c10:c11:c12:c13 c12 :: c14:c15:c16 -> c8:c9:c10:c11:c12:c13 c13 :: c8:c9:c10:c11:c12:c13 n__from :: 0':s -> cons:nil:n__from:n__zWquot c14 :: c:c1 -> c14:c15:c16 n__zWquot :: cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot c15 :: c8:c9:c10:c11:c12:c13 -> c14:c15:c16 c16 :: c14:c15:c16 from :: 0':s -> cons:nil:n__from:n__zWquot sel :: 0':s -> cons:nil:n__from:n__zWquot -> 0':s quot :: 0':s -> 0':s -> 0':s zWquot :: cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot hole_c:c11_17 :: c:c1 hole_0':s2_17 :: 0':s hole_c2:c33_17 :: c2:c3 hole_cons:nil:n__from:n__zWquot4_17 :: cons:nil:n__from:n__zWquot hole_c14:c15:c165_17 :: c14:c15:c16 hole_c4:c56_17 :: c4:c5 hole_c6:c77_17 :: c6:c7 hole_c8:c9:c10:c11:c12:c138_17 :: c8:c9:c10:c11:c12:c13 gen_0':s9_17 :: Nat -> 0':s gen_c2:c310_17 :: Nat -> c2:c3 gen_cons:nil:n__from:n__zWquot11_17 :: Nat -> cons:nil:n__from:n__zWquot gen_c4:c512_17 :: Nat -> c4:c5 gen_c6:c713_17 :: Nat -> c6:c7 ---------------------------------------- (13) OrderProof (LOWER BOUND(ID)) Heuristically decided to analyse the following defined symbols: SEL, activate, ACTIVATE, MINUS, QUOT, minus, sel, quot They will be analysed ascendingly in the following order: activate < SEL ACTIVATE < SEL activate < sel quot < activate QUOT < ACTIVATE MINUS < QUOT minus < QUOT minus < quot ---------------------------------------- (14) Obligation: Innermost TRS: Rules: FROM(z0) -> c FROM(z0) -> c1 SEL(0', cons(z0, z1)) -> c2 SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) MINUS(z0, 0') -> c4 MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(0', s(z0)) -> c6 QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) ZWQUOT(z0, nil) -> c8 ZWQUOT(nil, z0) -> c9 ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ZWQUOT(z0, z1) -> c13 ACTIVATE(n__from(z0)) -> c14(FROM(z0)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ACTIVATE(z0) -> c16 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) sel(0', cons(z0, z1)) -> z0 sel(s(z0), cons(z1, z2)) -> sel(z0, activate(z2)) minus(z0, 0') -> 0' minus(s(z0), s(z1)) -> minus(z0, z1) quot(0', s(z0)) -> 0' quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 Types: FROM :: 0':s -> c:c1 c :: c:c1 c1 :: c:c1 SEL :: 0':s -> cons:nil:n__from:n__zWquot -> c2:c3 0' :: 0':s cons :: 0':s -> cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot c2 :: c2:c3 s :: 0':s -> 0':s c3 :: c2:c3 -> c14:c15:c16 -> c2:c3 activate :: cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot ACTIVATE :: cons:nil:n__from:n__zWquot -> c14:c15:c16 MINUS :: 0':s -> 0':s -> c4:c5 c4 :: c4:c5 c5 :: c4:c5 -> c4:c5 QUOT :: 0':s -> 0':s -> c6:c7 c6 :: c6:c7 c7 :: c6:c7 -> c4:c5 -> c6:c7 minus :: 0':s -> 0':s -> 0':s ZWQUOT :: cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot -> c8:c9:c10:c11:c12:c13 nil :: cons:nil:n__from:n__zWquot c8 :: c8:c9:c10:c11:c12:c13 c9 :: c8:c9:c10:c11:c12:c13 c10 :: c6:c7 -> c8:c9:c10:c11:c12:c13 c11 :: c14:c15:c16 -> c8:c9:c10:c11:c12:c13 c12 :: c14:c15:c16 -> c8:c9:c10:c11:c12:c13 c13 :: c8:c9:c10:c11:c12:c13 n__from :: 0':s -> cons:nil:n__from:n__zWquot c14 :: c:c1 -> c14:c15:c16 n__zWquot :: cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot c15 :: c8:c9:c10:c11:c12:c13 -> c14:c15:c16 c16 :: c14:c15:c16 from :: 0':s -> cons:nil:n__from:n__zWquot sel :: 0':s -> cons:nil:n__from:n__zWquot -> 0':s quot :: 0':s -> 0':s -> 0':s zWquot :: cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot hole_c:c11_17 :: c:c1 hole_0':s2_17 :: 0':s hole_c2:c33_17 :: c2:c3 hole_cons:nil:n__from:n__zWquot4_17 :: cons:nil:n__from:n__zWquot hole_c14:c15:c165_17 :: c14:c15:c16 hole_c4:c56_17 :: c4:c5 hole_c6:c77_17 :: c6:c7 hole_c8:c9:c10:c11:c12:c138_17 :: c8:c9:c10:c11:c12:c13 gen_0':s9_17 :: Nat -> 0':s gen_c2:c310_17 :: Nat -> c2:c3 gen_cons:nil:n__from:n__zWquot11_17 :: Nat -> cons:nil:n__from:n__zWquot gen_c4:c512_17 :: Nat -> c4:c5 gen_c6:c713_17 :: Nat -> c6:c7 Generator Equations: gen_0':s9_17(0) <=> 0' gen_0':s9_17(+(x, 1)) <=> s(gen_0':s9_17(x)) gen_c2:c310_17(0) <=> c2 gen_c2:c310_17(+(x, 1)) <=> c3(gen_c2:c310_17(x), c14(c)) gen_cons:nil:n__from:n__zWquot11_17(0) <=> nil gen_cons:nil:n__from:n__zWquot11_17(+(x, 1)) <=> cons(0', gen_cons:nil:n__from:n__zWquot11_17(x)) gen_c4:c512_17(0) <=> c4 gen_c4:c512_17(+(x, 1)) <=> c5(gen_c4:c512_17(x)) gen_c6:c713_17(0) <=> c6 gen_c6:c713_17(+(x, 1)) <=> c7(gen_c6:c713_17(x), c4) The following defined symbols remain to be analysed: MINUS, SEL, activate, ACTIVATE, QUOT, minus, sel, quot They will be analysed ascendingly in the following order: activate < SEL ACTIVATE < SEL activate < sel quot < activate QUOT < ACTIVATE MINUS < QUOT minus < QUOT minus < quot ---------------------------------------- (15) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: MINUS(gen_0':s9_17(n15_17), gen_0':s9_17(n15_17)) -> gen_c4:c512_17(n15_17), rt in Omega(1 + n15_17) Induction Base: MINUS(gen_0':s9_17(0), gen_0':s9_17(0)) ->_R^Omega(1) c4 Induction Step: MINUS(gen_0':s9_17(+(n15_17, 1)), gen_0':s9_17(+(n15_17, 1))) ->_R^Omega(1) c5(MINUS(gen_0':s9_17(n15_17), gen_0':s9_17(n15_17))) ->_IH c5(gen_c4:c512_17(c16_17)) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (16) Complex Obligation (BEST) ---------------------------------------- (17) Obligation: Proved the lower bound n^1 for the following obligation: Innermost TRS: Rules: FROM(z0) -> c FROM(z0) -> c1 SEL(0', cons(z0, z1)) -> c2 SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) MINUS(z0, 0') -> c4 MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(0', s(z0)) -> c6 QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) ZWQUOT(z0, nil) -> c8 ZWQUOT(nil, z0) -> c9 ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ZWQUOT(z0, z1) -> c13 ACTIVATE(n__from(z0)) -> c14(FROM(z0)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ACTIVATE(z0) -> c16 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) sel(0', cons(z0, z1)) -> z0 sel(s(z0), cons(z1, z2)) -> sel(z0, activate(z2)) minus(z0, 0') -> 0' minus(s(z0), s(z1)) -> minus(z0, z1) quot(0', s(z0)) -> 0' quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 Types: FROM :: 0':s -> c:c1 c :: c:c1 c1 :: c:c1 SEL :: 0':s -> cons:nil:n__from:n__zWquot -> c2:c3 0' :: 0':s cons :: 0':s -> cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot c2 :: c2:c3 s :: 0':s -> 0':s c3 :: c2:c3 -> c14:c15:c16 -> c2:c3 activate :: cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot ACTIVATE :: cons:nil:n__from:n__zWquot -> c14:c15:c16 MINUS :: 0':s -> 0':s -> c4:c5 c4 :: c4:c5 c5 :: c4:c5 -> c4:c5 QUOT :: 0':s -> 0':s -> c6:c7 c6 :: c6:c7 c7 :: c6:c7 -> c4:c5 -> c6:c7 minus :: 0':s -> 0':s -> 0':s ZWQUOT :: cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot -> c8:c9:c10:c11:c12:c13 nil :: cons:nil:n__from:n__zWquot c8 :: c8:c9:c10:c11:c12:c13 c9 :: c8:c9:c10:c11:c12:c13 c10 :: c6:c7 -> c8:c9:c10:c11:c12:c13 c11 :: c14:c15:c16 -> c8:c9:c10:c11:c12:c13 c12 :: c14:c15:c16 -> c8:c9:c10:c11:c12:c13 c13 :: c8:c9:c10:c11:c12:c13 n__from :: 0':s -> cons:nil:n__from:n__zWquot c14 :: c:c1 -> c14:c15:c16 n__zWquot :: cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot c15 :: c8:c9:c10:c11:c12:c13 -> c14:c15:c16 c16 :: c14:c15:c16 from :: 0':s -> cons:nil:n__from:n__zWquot sel :: 0':s -> cons:nil:n__from:n__zWquot -> 0':s quot :: 0':s -> 0':s -> 0':s zWquot :: cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot hole_c:c11_17 :: c:c1 hole_0':s2_17 :: 0':s hole_c2:c33_17 :: c2:c3 hole_cons:nil:n__from:n__zWquot4_17 :: cons:nil:n__from:n__zWquot hole_c14:c15:c165_17 :: c14:c15:c16 hole_c4:c56_17 :: c4:c5 hole_c6:c77_17 :: c6:c7 hole_c8:c9:c10:c11:c12:c138_17 :: c8:c9:c10:c11:c12:c13 gen_0':s9_17 :: Nat -> 0':s gen_c2:c310_17 :: Nat -> c2:c3 gen_cons:nil:n__from:n__zWquot11_17 :: Nat -> cons:nil:n__from:n__zWquot gen_c4:c512_17 :: Nat -> c4:c5 gen_c6:c713_17 :: Nat -> c6:c7 Generator Equations: gen_0':s9_17(0) <=> 0' gen_0':s9_17(+(x, 1)) <=> s(gen_0':s9_17(x)) gen_c2:c310_17(0) <=> c2 gen_c2:c310_17(+(x, 1)) <=> c3(gen_c2:c310_17(x), c14(c)) gen_cons:nil:n__from:n__zWquot11_17(0) <=> nil gen_cons:nil:n__from:n__zWquot11_17(+(x, 1)) <=> cons(0', gen_cons:nil:n__from:n__zWquot11_17(x)) gen_c4:c512_17(0) <=> c4 gen_c4:c512_17(+(x, 1)) <=> c5(gen_c4:c512_17(x)) gen_c6:c713_17(0) <=> c6 gen_c6:c713_17(+(x, 1)) <=> c7(gen_c6:c713_17(x), c4) The following defined symbols remain to be analysed: MINUS, SEL, activate, ACTIVATE, QUOT, minus, sel, quot They will be analysed ascendingly in the following order: activate < SEL ACTIVATE < SEL activate < sel quot < activate QUOT < ACTIVATE MINUS < QUOT minus < QUOT minus < quot ---------------------------------------- (18) LowerBoundPropagationProof (FINISHED) Propagated lower bound. ---------------------------------------- (19) BOUNDS(n^1, INF) ---------------------------------------- (20) Obligation: Innermost TRS: Rules: FROM(z0) -> c FROM(z0) -> c1 SEL(0', cons(z0, z1)) -> c2 SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) MINUS(z0, 0') -> c4 MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(0', s(z0)) -> c6 QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) ZWQUOT(z0, nil) -> c8 ZWQUOT(nil, z0) -> c9 ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ZWQUOT(z0, z1) -> c13 ACTIVATE(n__from(z0)) -> c14(FROM(z0)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ACTIVATE(z0) -> c16 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) sel(0', cons(z0, z1)) -> z0 sel(s(z0), cons(z1, z2)) -> sel(z0, activate(z2)) minus(z0, 0') -> 0' minus(s(z0), s(z1)) -> minus(z0, z1) quot(0', s(z0)) -> 0' quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 Types: FROM :: 0':s -> c:c1 c :: c:c1 c1 :: c:c1 SEL :: 0':s -> cons:nil:n__from:n__zWquot -> c2:c3 0' :: 0':s cons :: 0':s -> cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot c2 :: c2:c3 s :: 0':s -> 0':s c3 :: c2:c3 -> c14:c15:c16 -> c2:c3 activate :: cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot ACTIVATE :: cons:nil:n__from:n__zWquot -> c14:c15:c16 MINUS :: 0':s -> 0':s -> c4:c5 c4 :: c4:c5 c5 :: c4:c5 -> c4:c5 QUOT :: 0':s -> 0':s -> c6:c7 c6 :: c6:c7 c7 :: c6:c7 -> c4:c5 -> c6:c7 minus :: 0':s -> 0':s -> 0':s ZWQUOT :: cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot -> c8:c9:c10:c11:c12:c13 nil :: cons:nil:n__from:n__zWquot c8 :: c8:c9:c10:c11:c12:c13 c9 :: c8:c9:c10:c11:c12:c13 c10 :: c6:c7 -> c8:c9:c10:c11:c12:c13 c11 :: c14:c15:c16 -> c8:c9:c10:c11:c12:c13 c12 :: c14:c15:c16 -> c8:c9:c10:c11:c12:c13 c13 :: c8:c9:c10:c11:c12:c13 n__from :: 0':s -> cons:nil:n__from:n__zWquot c14 :: c:c1 -> c14:c15:c16 n__zWquot :: cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot c15 :: c8:c9:c10:c11:c12:c13 -> c14:c15:c16 c16 :: c14:c15:c16 from :: 0':s -> cons:nil:n__from:n__zWquot sel :: 0':s -> cons:nil:n__from:n__zWquot -> 0':s quot :: 0':s -> 0':s -> 0':s zWquot :: cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot hole_c:c11_17 :: c:c1 hole_0':s2_17 :: 0':s hole_c2:c33_17 :: c2:c3 hole_cons:nil:n__from:n__zWquot4_17 :: cons:nil:n__from:n__zWquot hole_c14:c15:c165_17 :: c14:c15:c16 hole_c4:c56_17 :: c4:c5 hole_c6:c77_17 :: c6:c7 hole_c8:c9:c10:c11:c12:c138_17 :: c8:c9:c10:c11:c12:c13 gen_0':s9_17 :: Nat -> 0':s gen_c2:c310_17 :: Nat -> c2:c3 gen_cons:nil:n__from:n__zWquot11_17 :: Nat -> cons:nil:n__from:n__zWquot gen_c4:c512_17 :: Nat -> c4:c5 gen_c6:c713_17 :: Nat -> c6:c7 Lemmas: MINUS(gen_0':s9_17(n15_17), gen_0':s9_17(n15_17)) -> gen_c4:c512_17(n15_17), rt in Omega(1 + n15_17) Generator Equations: gen_0':s9_17(0) <=> 0' gen_0':s9_17(+(x, 1)) <=> s(gen_0':s9_17(x)) gen_c2:c310_17(0) <=> c2 gen_c2:c310_17(+(x, 1)) <=> c3(gen_c2:c310_17(x), c14(c)) gen_cons:nil:n__from:n__zWquot11_17(0) <=> nil gen_cons:nil:n__from:n__zWquot11_17(+(x, 1)) <=> cons(0', gen_cons:nil:n__from:n__zWquot11_17(x)) gen_c4:c512_17(0) <=> c4 gen_c4:c512_17(+(x, 1)) <=> c5(gen_c4:c512_17(x)) gen_c6:c713_17(0) <=> c6 gen_c6:c713_17(+(x, 1)) <=> c7(gen_c6:c713_17(x), c4) The following defined symbols remain to be analysed: minus, SEL, activate, ACTIVATE, QUOT, sel, quot They will be analysed ascendingly in the following order: activate < SEL ACTIVATE < SEL activate < sel quot < activate QUOT < ACTIVATE minus < QUOT minus < quot ---------------------------------------- (21) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: minus(gen_0':s9_17(n608_17), gen_0':s9_17(n608_17)) -> gen_0':s9_17(0), rt in Omega(0) Induction Base: minus(gen_0':s9_17(0), gen_0':s9_17(0)) ->_R^Omega(0) 0' Induction Step: minus(gen_0':s9_17(+(n608_17, 1)), gen_0':s9_17(+(n608_17, 1))) ->_R^Omega(0) minus(gen_0':s9_17(n608_17), gen_0':s9_17(n608_17)) ->_IH gen_0':s9_17(0) We have rt in Omega(1) and sz in O(n). Thus, we have irc_R in Omega(n^0). ---------------------------------------- (22) Obligation: Innermost TRS: Rules: FROM(z0) -> c FROM(z0) -> c1 SEL(0', cons(z0, z1)) -> c2 SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) MINUS(z0, 0') -> c4 MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(0', s(z0)) -> c6 QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) ZWQUOT(z0, nil) -> c8 ZWQUOT(nil, z0) -> c9 ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ZWQUOT(z0, z1) -> c13 ACTIVATE(n__from(z0)) -> c14(FROM(z0)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ACTIVATE(z0) -> c16 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) sel(0', cons(z0, z1)) -> z0 sel(s(z0), cons(z1, z2)) -> sel(z0, activate(z2)) minus(z0, 0') -> 0' minus(s(z0), s(z1)) -> minus(z0, z1) quot(0', s(z0)) -> 0' quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 Types: FROM :: 0':s -> c:c1 c :: c:c1 c1 :: c:c1 SEL :: 0':s -> cons:nil:n__from:n__zWquot -> c2:c3 0' :: 0':s cons :: 0':s -> cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot c2 :: c2:c3 s :: 0':s -> 0':s c3 :: c2:c3 -> c14:c15:c16 -> c2:c3 activate :: cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot ACTIVATE :: cons:nil:n__from:n__zWquot -> c14:c15:c16 MINUS :: 0':s -> 0':s -> c4:c5 c4 :: c4:c5 c5 :: c4:c5 -> c4:c5 QUOT :: 0':s -> 0':s -> c6:c7 c6 :: c6:c7 c7 :: c6:c7 -> c4:c5 -> c6:c7 minus :: 0':s -> 0':s -> 0':s ZWQUOT :: cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot -> c8:c9:c10:c11:c12:c13 nil :: cons:nil:n__from:n__zWquot c8 :: c8:c9:c10:c11:c12:c13 c9 :: c8:c9:c10:c11:c12:c13 c10 :: c6:c7 -> c8:c9:c10:c11:c12:c13 c11 :: c14:c15:c16 -> c8:c9:c10:c11:c12:c13 c12 :: c14:c15:c16 -> c8:c9:c10:c11:c12:c13 c13 :: c8:c9:c10:c11:c12:c13 n__from :: 0':s -> cons:nil:n__from:n__zWquot c14 :: c:c1 -> c14:c15:c16 n__zWquot :: cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot c15 :: c8:c9:c10:c11:c12:c13 -> c14:c15:c16 c16 :: c14:c15:c16 from :: 0':s -> cons:nil:n__from:n__zWquot sel :: 0':s -> cons:nil:n__from:n__zWquot -> 0':s quot :: 0':s -> 0':s -> 0':s zWquot :: cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot hole_c:c11_17 :: c:c1 hole_0':s2_17 :: 0':s hole_c2:c33_17 :: c2:c3 hole_cons:nil:n__from:n__zWquot4_17 :: cons:nil:n__from:n__zWquot hole_c14:c15:c165_17 :: c14:c15:c16 hole_c4:c56_17 :: c4:c5 hole_c6:c77_17 :: c6:c7 hole_c8:c9:c10:c11:c12:c138_17 :: c8:c9:c10:c11:c12:c13 gen_0':s9_17 :: Nat -> 0':s gen_c2:c310_17 :: Nat -> c2:c3 gen_cons:nil:n__from:n__zWquot11_17 :: Nat -> cons:nil:n__from:n__zWquot gen_c4:c512_17 :: Nat -> c4:c5 gen_c6:c713_17 :: Nat -> c6:c7 Lemmas: MINUS(gen_0':s9_17(n15_17), gen_0':s9_17(n15_17)) -> gen_c4:c512_17(n15_17), rt in Omega(1 + n15_17) minus(gen_0':s9_17(n608_17), gen_0':s9_17(n608_17)) -> gen_0':s9_17(0), rt in Omega(0) Generator Equations: gen_0':s9_17(0) <=> 0' gen_0':s9_17(+(x, 1)) <=> s(gen_0':s9_17(x)) gen_c2:c310_17(0) <=> c2 gen_c2:c310_17(+(x, 1)) <=> c3(gen_c2:c310_17(x), c14(c)) gen_cons:nil:n__from:n__zWquot11_17(0) <=> nil gen_cons:nil:n__from:n__zWquot11_17(+(x, 1)) <=> cons(0', gen_cons:nil:n__from:n__zWquot11_17(x)) gen_c4:c512_17(0) <=> c4 gen_c4:c512_17(+(x, 1)) <=> c5(gen_c4:c512_17(x)) gen_c6:c713_17(0) <=> c6 gen_c6:c713_17(+(x, 1)) <=> c7(gen_c6:c713_17(x), c4) The following defined symbols remain to be analysed: QUOT, SEL, activate, ACTIVATE, sel, quot They will be analysed ascendingly in the following order: activate < SEL ACTIVATE < SEL activate < sel quot < activate QUOT < ACTIVATE ---------------------------------------- (23) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: SEL(gen_0':s9_17(n2153_17), gen_cons:nil:n__from:n__zWquot11_17(+(1, n2153_17))) -> *14_17, rt in Omega(n2153_17) Induction Base: SEL(gen_0':s9_17(0), gen_cons:nil:n__from:n__zWquot11_17(+(1, 0))) Induction Step: SEL(gen_0':s9_17(+(n2153_17, 1)), gen_cons:nil:n__from:n__zWquot11_17(+(1, +(n2153_17, 1)))) ->_R^Omega(1) c3(SEL(gen_0':s9_17(n2153_17), activate(gen_cons:nil:n__from:n__zWquot11_17(+(1, n2153_17)))), ACTIVATE(gen_cons:nil:n__from:n__zWquot11_17(+(1, n2153_17)))) ->_R^Omega(0) c3(SEL(gen_0':s9_17(n2153_17), gen_cons:nil:n__from:n__zWquot11_17(+(1, n2153_17))), ACTIVATE(gen_cons:nil:n__from:n__zWquot11_17(+(1, n2153_17)))) ->_IH c3(*14_17, ACTIVATE(gen_cons:nil:n__from:n__zWquot11_17(+(1, n2153_17)))) ->_R^Omega(1) c3(*14_17, c16) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (24) Obligation: Innermost TRS: Rules: FROM(z0) -> c FROM(z0) -> c1 SEL(0', cons(z0, z1)) -> c2 SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) MINUS(z0, 0') -> c4 MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(0', s(z0)) -> c6 QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) ZWQUOT(z0, nil) -> c8 ZWQUOT(nil, z0) -> c9 ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ZWQUOT(z0, z1) -> c13 ACTIVATE(n__from(z0)) -> c14(FROM(z0)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ACTIVATE(z0) -> c16 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) sel(0', cons(z0, z1)) -> z0 sel(s(z0), cons(z1, z2)) -> sel(z0, activate(z2)) minus(z0, 0') -> 0' minus(s(z0), s(z1)) -> minus(z0, z1) quot(0', s(z0)) -> 0' quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 Types: FROM :: 0':s -> c:c1 c :: c:c1 c1 :: c:c1 SEL :: 0':s -> cons:nil:n__from:n__zWquot -> c2:c3 0' :: 0':s cons :: 0':s -> cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot c2 :: c2:c3 s :: 0':s -> 0':s c3 :: c2:c3 -> c14:c15:c16 -> c2:c3 activate :: cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot ACTIVATE :: cons:nil:n__from:n__zWquot -> c14:c15:c16 MINUS :: 0':s -> 0':s -> c4:c5 c4 :: c4:c5 c5 :: c4:c5 -> c4:c5 QUOT :: 0':s -> 0':s -> c6:c7 c6 :: c6:c7 c7 :: c6:c7 -> c4:c5 -> c6:c7 minus :: 0':s -> 0':s -> 0':s ZWQUOT :: cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot -> c8:c9:c10:c11:c12:c13 nil :: cons:nil:n__from:n__zWquot c8 :: c8:c9:c10:c11:c12:c13 c9 :: c8:c9:c10:c11:c12:c13 c10 :: c6:c7 -> c8:c9:c10:c11:c12:c13 c11 :: c14:c15:c16 -> c8:c9:c10:c11:c12:c13 c12 :: c14:c15:c16 -> c8:c9:c10:c11:c12:c13 c13 :: c8:c9:c10:c11:c12:c13 n__from :: 0':s -> cons:nil:n__from:n__zWquot c14 :: c:c1 -> c14:c15:c16 n__zWquot :: cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot c15 :: c8:c9:c10:c11:c12:c13 -> c14:c15:c16 c16 :: c14:c15:c16 from :: 0':s -> cons:nil:n__from:n__zWquot sel :: 0':s -> cons:nil:n__from:n__zWquot -> 0':s quot :: 0':s -> 0':s -> 0':s zWquot :: cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot -> cons:nil:n__from:n__zWquot hole_c:c11_17 :: c:c1 hole_0':s2_17 :: 0':s hole_c2:c33_17 :: c2:c3 hole_cons:nil:n__from:n__zWquot4_17 :: cons:nil:n__from:n__zWquot hole_c14:c15:c165_17 :: c14:c15:c16 hole_c4:c56_17 :: c4:c5 hole_c6:c77_17 :: c6:c7 hole_c8:c9:c10:c11:c12:c138_17 :: c8:c9:c10:c11:c12:c13 gen_0':s9_17 :: Nat -> 0':s gen_c2:c310_17 :: Nat -> c2:c3 gen_cons:nil:n__from:n__zWquot11_17 :: Nat -> cons:nil:n__from:n__zWquot gen_c4:c512_17 :: Nat -> c4:c5 gen_c6:c713_17 :: Nat -> c6:c7 Lemmas: MINUS(gen_0':s9_17(n15_17), gen_0':s9_17(n15_17)) -> gen_c4:c512_17(n15_17), rt in Omega(1 + n15_17) minus(gen_0':s9_17(n608_17), gen_0':s9_17(n608_17)) -> gen_0':s9_17(0), rt in Omega(0) SEL(gen_0':s9_17(n2153_17), gen_cons:nil:n__from:n__zWquot11_17(+(1, n2153_17))) -> *14_17, rt in Omega(n2153_17) Generator Equations: gen_0':s9_17(0) <=> 0' gen_0':s9_17(+(x, 1)) <=> s(gen_0':s9_17(x)) gen_c2:c310_17(0) <=> c2 gen_c2:c310_17(+(x, 1)) <=> c3(gen_c2:c310_17(x), c14(c)) gen_cons:nil:n__from:n__zWquot11_17(0) <=> nil gen_cons:nil:n__from:n__zWquot11_17(+(x, 1)) <=> cons(0', gen_cons:nil:n__from:n__zWquot11_17(x)) gen_c4:c512_17(0) <=> c4 gen_c4:c512_17(+(x, 1)) <=> c5(gen_c4:c512_17(x)) gen_c6:c713_17(0) <=> c6 gen_c6:c713_17(+(x, 1)) <=> c7(gen_c6:c713_17(x), c4) The following defined symbols remain to be analysed: sel ---------------------------------------- (25) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: sel(gen_0':s9_17(n6547_17), gen_cons:nil:n__from:n__zWquot11_17(+(1, n6547_17))) -> gen_0':s9_17(0), rt in Omega(0) Induction Base: sel(gen_0':s9_17(0), gen_cons:nil:n__from:n__zWquot11_17(+(1, 0))) ->_R^Omega(0) 0' Induction Step: sel(gen_0':s9_17(+(n6547_17, 1)), gen_cons:nil:n__from:n__zWquot11_17(+(1, +(n6547_17, 1)))) ->_R^Omega(0) sel(gen_0':s9_17(n6547_17), activate(gen_cons:nil:n__from:n__zWquot11_17(+(1, n6547_17)))) ->_R^Omega(0) sel(gen_0':s9_17(n6547_17), gen_cons:nil:n__from:n__zWquot11_17(+(1, n6547_17))) ->_IH gen_0':s9_17(0) We have rt in Omega(1) and sz in O(n). Thus, we have irc_R in Omega(n^0). ---------------------------------------- (26) BOUNDS(1, INF) ---------------------------------------- (27) CpxTrsToCdtProof (UPPER BOUND(ID)) Converted Cpx (relative) TRS with rewrite strategy PARALLEL_INNERMOST to CDT ---------------------------------------- (28) Obligation: Complexity Dependency Tuples Problem Rules: from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) sel(0, cons(z0, z1)) -> z0 sel(s(z0), cons(z1, z2)) -> sel(z0, activate(z2)) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 Tuples: FROM(z0) -> c FROM(z0) -> c1 SEL(0, cons(z0, z1)) -> c2 SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) MINUS(z0, 0) -> c4 MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(0, s(z0)) -> c6 QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) ZWQUOT(z0, nil) -> c8 ZWQUOT(nil, z0) -> c9 ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ZWQUOT(z0, z1) -> c13 ACTIVATE(n__from(z0)) -> c14(FROM(z0)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ACTIVATE(z0) -> c16 S tuples: FROM(z0) -> c FROM(z0) -> c1 SEL(0, cons(z0, z1)) -> c2 SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) MINUS(z0, 0) -> c4 MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(0, s(z0)) -> c6 QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) ZWQUOT(z0, nil) -> c8 ZWQUOT(nil, z0) -> c9 ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ZWQUOT(z0, z1) -> c13 ACTIVATE(n__from(z0)) -> c14(FROM(z0)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ACTIVATE(z0) -> c16 K tuples:none Defined Rule Symbols: from_1, sel_2, minus_2, quot_2, zWquot_2, activate_1 Defined Pair Symbols: FROM_1, SEL_2, MINUS_2, QUOT_2, ZWQUOT_2, ACTIVATE_1 Compound Symbols: c, c1, c2, c3_2, c4, c5_1, c6, c7_2, c8, c9, c10_1, c11_1, c12_1, c13, c14_1, c15_1, c16 ---------------------------------------- (29) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 10 trailing nodes: MINUS(z0, 0) -> c4 FROM(z0) -> c ZWQUOT(nil, z0) -> c9 ZWQUOT(z0, z1) -> c13 ACTIVATE(n__from(z0)) -> c14(FROM(z0)) ACTIVATE(z0) -> c16 SEL(0, cons(z0, z1)) -> c2 QUOT(0, s(z0)) -> c6 ZWQUOT(z0, nil) -> c8 FROM(z0) -> c1 ---------------------------------------- (30) Obligation: Complexity Dependency Tuples Problem Rules: from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) sel(0, cons(z0, z1)) -> z0 sel(s(z0), cons(z1, z2)) -> sel(z0, activate(z2)) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 Tuples: SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) S tuples: SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) K tuples:none Defined Rule Symbols: from_1, sel_2, minus_2, quot_2, zWquot_2, activate_1 Defined Pair Symbols: SEL_2, MINUS_2, QUOT_2, ZWQUOT_2, ACTIVATE_1 Compound Symbols: c3_2, c5_1, c7_2, c10_1, c11_1, c12_1, c15_1 ---------------------------------------- (31) CdtUsableRulesProof (BOTH BOUNDS(ID, ID)) The following rules are not usable and were removed: sel(0, cons(z0, z1)) -> z0 sel(s(z0), cons(z1, z2)) -> sel(z0, activate(z2)) ---------------------------------------- (32) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) S tuples: SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) K tuples:none Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, MINUS_2, QUOT_2, ZWQUOT_2, ACTIVATE_1 Compound Symbols: c3_2, c5_1, c7_2, c10_1, c11_1, c12_1, c15_1 ---------------------------------------- (33) CdtToCpxRelTrsProof (BOTH BOUNDS(ID, ID)) Converted S to standard rules, and D \ S as well as R to relative rules. ---------------------------------------- (34) 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: SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) The (relative) TRS S consists of the following rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Rewrite Strategy: INNERMOST ---------------------------------------- (35) RelTrsToTrsProof (UPPER BOUND(ID)) transformed relative TRS to TRS ---------------------------------------- (36) 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: SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) S is empty. Rewrite Strategy: INNERMOST ---------------------------------------- (37) RelTrsToWeightedTrsProof (BOTH BOUNDS(ID, ID)) Transformed relative TRS to weighted TRS ---------------------------------------- (38) 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: SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) [1] MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) [1] QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) [1] ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) [1] ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) [1] ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) [1] ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) [1] activate(n__from(z0)) -> from(z0) [0] activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) [0] activate(z0) -> z0 [0] from(z0) -> cons(z0, n__from(s(z0))) [0] from(z0) -> n__from(z0) [0] zWquot(z0, nil) -> nil [0] zWquot(nil, z0) -> nil [0] zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) [0] zWquot(z0, z1) -> n__zWquot(z0, z1) [0] quot(0, s(z0)) -> 0 [0] quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) [0] minus(z0, 0) -> 0 [0] minus(s(z0), s(z1)) -> minus(z0, z1) [0] Rewrite Strategy: INNERMOST ---------------------------------------- (39) TypeInferenceProof (BOTH BOUNDS(ID, ID)) Infered types. ---------------------------------------- (40) Obligation: Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules: SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) [1] MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) [1] QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) [1] ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) [1] ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) [1] ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) [1] ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) [1] activate(n__from(z0)) -> from(z0) [0] activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) [0] activate(z0) -> z0 [0] from(z0) -> cons(z0, n__from(s(z0))) [0] from(z0) -> n__from(z0) [0] zWquot(z0, nil) -> nil [0] zWquot(nil, z0) -> nil [0] zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) [0] zWquot(z0, z1) -> n__zWquot(z0, z1) [0] quot(0, s(z0)) -> 0 [0] quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) [0] minus(z0, 0) -> 0 [0] minus(s(z0), s(z1)) -> minus(z0, z1) [0] The TRS has the following type information: SEL :: s:0 -> cons:n__zWquot:n__from:nil -> c3 s :: s:0 -> s:0 cons :: s:0 -> cons:n__zWquot:n__from:nil -> cons:n__zWquot:n__from:nil c3 :: c3 -> c15 -> c3 activate :: cons:n__zWquot:n__from:nil -> cons:n__zWquot:n__from:nil ACTIVATE :: cons:n__zWquot:n__from:nil -> c15 MINUS :: s:0 -> s:0 -> c5 c5 :: c5 -> c5 QUOT :: s:0 -> s:0 -> c7 c7 :: c7 -> c5 -> c7 minus :: s:0 -> s:0 -> s:0 ZWQUOT :: cons:n__zWquot:n__from:nil -> cons:n__zWquot:n__from:nil -> c10:c11:c12 c10 :: c7 -> c10:c11:c12 c11 :: c15 -> c10:c11:c12 c12 :: c15 -> c10:c11:c12 n__zWquot :: cons:n__zWquot:n__from:nil -> cons:n__zWquot:n__from:nil -> cons:n__zWquot:n__from:nil c15 :: c10:c11:c12 -> c15 n__from :: s:0 -> cons:n__zWquot:n__from:nil from :: s:0 -> cons:n__zWquot:n__from:nil zWquot :: cons:n__zWquot:n__from:nil -> cons:n__zWquot:n__from:nil -> cons:n__zWquot:n__from:nil nil :: cons:n__zWquot:n__from:nil quot :: s:0 -> s:0 -> s:0 0 :: s:0 Rewrite Strategy: INNERMOST ---------------------------------------- (41) 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: SEL_2 MINUS_2 QUOT_2 ZWQUOT_2 ACTIVATE_1 (c) The following functions are completely defined: activate_1 from_1 zWquot_2 quot_2 minus_2 Due to the following rules being added: activate(v0) -> nil [0] from(v0) -> nil [0] zWquot(v0, v1) -> nil [0] quot(v0, v1) -> 0 [0] minus(v0, v1) -> 0 [0] And the following fresh constants: const, const1, const2, const3, const4 ---------------------------------------- (42) 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: SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) [1] MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) [1] QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) [1] ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) [1] ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) [1] ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) [1] ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) [1] activate(n__from(z0)) -> from(z0) [0] activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) [0] activate(z0) -> z0 [0] from(z0) -> cons(z0, n__from(s(z0))) [0] from(z0) -> n__from(z0) [0] zWquot(z0, nil) -> nil [0] zWquot(nil, z0) -> nil [0] zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) [0] zWquot(z0, z1) -> n__zWquot(z0, z1) [0] quot(0, s(z0)) -> 0 [0] quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) [0] minus(z0, 0) -> 0 [0] minus(s(z0), s(z1)) -> minus(z0, z1) [0] activate(v0) -> nil [0] from(v0) -> nil [0] zWquot(v0, v1) -> nil [0] quot(v0, v1) -> 0 [0] minus(v0, v1) -> 0 [0] The TRS has the following type information: SEL :: s:0 -> cons:n__zWquot:n__from:nil -> c3 s :: s:0 -> s:0 cons :: s:0 -> cons:n__zWquot:n__from:nil -> cons:n__zWquot:n__from:nil c3 :: c3 -> c15 -> c3 activate :: cons:n__zWquot:n__from:nil -> cons:n__zWquot:n__from:nil ACTIVATE :: cons:n__zWquot:n__from:nil -> c15 MINUS :: s:0 -> s:0 -> c5 c5 :: c5 -> c5 QUOT :: s:0 -> s:0 -> c7 c7 :: c7 -> c5 -> c7 minus :: s:0 -> s:0 -> s:0 ZWQUOT :: cons:n__zWquot:n__from:nil -> cons:n__zWquot:n__from:nil -> c10:c11:c12 c10 :: c7 -> c10:c11:c12 c11 :: c15 -> c10:c11:c12 c12 :: c15 -> c10:c11:c12 n__zWquot :: cons:n__zWquot:n__from:nil -> cons:n__zWquot:n__from:nil -> cons:n__zWquot:n__from:nil c15 :: c10:c11:c12 -> c15 n__from :: s:0 -> cons:n__zWquot:n__from:nil from :: s:0 -> cons:n__zWquot:n__from:nil zWquot :: cons:n__zWquot:n__from:nil -> cons:n__zWquot:n__from:nil -> cons:n__zWquot:n__from:nil nil :: cons:n__zWquot:n__from:nil quot :: s:0 -> s:0 -> s:0 0 :: s:0 const :: c3 const1 :: c15 const2 :: c5 const3 :: c7 const4 :: c10:c11:c12 Rewrite Strategy: INNERMOST ---------------------------------------- (43) NarrowingProof (BOTH BOUNDS(ID, ID)) Narrowed the inner basic terms of all right-hand sides by a single narrowing step. ---------------------------------------- (44) 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: SEL(s(z0), cons(z1, n__from(z0'))) -> c3(SEL(z0, from(z0')), ACTIVATE(n__from(z0'))) [1] SEL(s(z0), cons(z1, n__zWquot(z0'', z1'))) -> c3(SEL(z0, zWquot(z0'', z1')), ACTIVATE(n__zWquot(z0'', z1'))) [1] SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, z2), ACTIVATE(z2)) [1] SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, nil), ACTIVATE(z2)) [1] MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) [1] QUOT(s(z0), s(0)) -> c7(QUOT(0, s(0)), MINUS(z0, 0)) [1] QUOT(s(s(z01)), s(s(z1''))) -> c7(QUOT(minus(z01, z1''), s(s(z1''))), MINUS(s(z01), s(z1''))) [1] QUOT(s(z0), s(z1)) -> c7(QUOT(0, s(z1)), MINUS(z0, z1)) [1] ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) [1] ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) [1] ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) [1] ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) [1] activate(n__from(z0)) -> from(z0) [0] activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) [0] activate(z0) -> z0 [0] from(z0) -> cons(z0, n__from(s(z0))) [0] from(z0) -> n__from(z0) [0] zWquot(z0, nil) -> nil [0] zWquot(nil, z0) -> nil [0] zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) [0] zWquot(z0, z1) -> n__zWquot(z0, z1) [0] quot(0, s(z0)) -> 0 [0] quot(s(z0), s(0)) -> s(quot(0, s(0))) [0] quot(s(s(z02)), s(s(z11))) -> s(quot(minus(z02, z11), s(s(z11)))) [0] quot(s(z0), s(z1)) -> s(quot(0, s(z1))) [0] minus(z0, 0) -> 0 [0] minus(s(z0), s(z1)) -> minus(z0, z1) [0] activate(v0) -> nil [0] from(v0) -> nil [0] zWquot(v0, v1) -> nil [0] quot(v0, v1) -> 0 [0] minus(v0, v1) -> 0 [0] The TRS has the following type information: SEL :: s:0 -> cons:n__zWquot:n__from:nil -> c3 s :: s:0 -> s:0 cons :: s:0 -> cons:n__zWquot:n__from:nil -> cons:n__zWquot:n__from:nil c3 :: c3 -> c15 -> c3 activate :: cons:n__zWquot:n__from:nil -> cons:n__zWquot:n__from:nil ACTIVATE :: cons:n__zWquot:n__from:nil -> c15 MINUS :: s:0 -> s:0 -> c5 c5 :: c5 -> c5 QUOT :: s:0 -> s:0 -> c7 c7 :: c7 -> c5 -> c7 minus :: s:0 -> s:0 -> s:0 ZWQUOT :: cons:n__zWquot:n__from:nil -> cons:n__zWquot:n__from:nil -> c10:c11:c12 c10 :: c7 -> c10:c11:c12 c11 :: c15 -> c10:c11:c12 c12 :: c15 -> c10:c11:c12 n__zWquot :: cons:n__zWquot:n__from:nil -> cons:n__zWquot:n__from:nil -> cons:n__zWquot:n__from:nil c15 :: c10:c11:c12 -> c15 n__from :: s:0 -> cons:n__zWquot:n__from:nil from :: s:0 -> cons:n__zWquot:n__from:nil zWquot :: cons:n__zWquot:n__from:nil -> cons:n__zWquot:n__from:nil -> cons:n__zWquot:n__from:nil nil :: cons:n__zWquot:n__from:nil quot :: s:0 -> s:0 -> s:0 0 :: s:0 const :: c3 const1 :: c15 const2 :: c5 const3 :: c7 const4 :: c10:c11:c12 Rewrite Strategy: INNERMOST ---------------------------------------- (45) CpxTypedWeightedTrsToRntsProof (UPPER BOUND(ID)) Transformed the TRS into an over-approximating RNTS by (improved) Size Abstraction. The constant constructors are abstracted as follows: nil => 0 0 => 0 const => 0 const1 => 0 const2 => 0 const3 => 0 const4 => 0 ---------------------------------------- (46) Obligation: Complexity RNTS consisting of the following rules: ACTIVATE(z) -{ 1 }-> 1 + ZWQUOT(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MINUS(z, z') -{ 1 }-> 1 + MINUS(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 QUOT(z, z') -{ 1 }-> 1 + QUOT(minus(z01, z1''), 1 + (1 + z1'')) + MINUS(1 + z01, 1 + z1'') :|: z = 1 + (1 + z01), z' = 1 + (1 + z1''), z01 >= 0, z1'' >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + z1) + MINUS(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + 0) + MINUS(z0, 0) :|: z = 1 + z0, z' = 1 + 0, z0 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z0, z2) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z = 1 + z0, z0 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z0, zWquot(z0'', z1')) + ACTIVATE(1 + z0'' + z1') :|: z1 >= 0, z = 1 + z0, z1' >= 0, z0 >= 0, z' = 1 + z1 + (1 + z0'' + z1'), z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z0, from(z0')) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z = 1 + z0, z0 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z0, 0) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z = 1 + z0, z0 >= 0, z2 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + QUOT(z0, z2) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z1) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z3) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 activate(z) -{ 0 }-> z0 :|: z = z0, z0 >= 0 activate(z) -{ 0 }-> zWquot(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 activate(z) -{ 0 }-> from(z0) :|: z = 1 + z0, z0 >= 0 activate(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 from(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 from(z) -{ 0 }-> 1 + z0 :|: z = z0, z0 >= 0 from(z) -{ 0 }-> 1 + z0 + (1 + (1 + z0)) :|: z = z0, z0 >= 0 minus(z, z') -{ 0 }-> minus(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 minus(z, z') -{ 0 }-> 0 :|: z = z0, z0 >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 quot(z, z') -{ 0 }-> 0 :|: z0 >= 0, z' = 1 + z0, z = 0 quot(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 quot(z, z') -{ 0 }-> 1 + quot(minus(z02, z11), 1 + (1 + z11)) :|: z = 1 + (1 + z02), z11 >= 0, z02 >= 0, z' = 1 + (1 + z11) quot(z, z') -{ 0 }-> 1 + quot(0, 1 + z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 quot(z, z') -{ 0 }-> 1 + quot(0, 1 + 0) :|: z = 1 + z0, z' = 1 + 0, z0 >= 0 zWquot(z, z') -{ 0 }-> 0 :|: z = z0, z0 >= 0, z' = 0 zWquot(z, z') -{ 0 }-> 0 :|: z0 >= 0, z = 0, z' = z0 zWquot(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 zWquot(z, z') -{ 0 }-> 1 + z0 + z1 :|: z = z0, z1 >= 0, z' = z1, z0 >= 0 zWquot(z, z') -{ 0 }-> 1 + quot(z0, z2) + (1 + activate(z1) + activate(z3)) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ---------------------------------------- (47) InliningProof (UPPER BOUND(ID)) Inlined the following terminating rules on right-hand sides where appropriate: from(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 from(z) -{ 0 }-> 1 + z0 :|: z = z0, z0 >= 0 from(z) -{ 0 }-> 1 + z0 + (1 + (1 + z0)) :|: z = z0, z0 >= 0 ---------------------------------------- (48) Obligation: Complexity RNTS consisting of the following rules: ACTIVATE(z) -{ 1 }-> 1 + ZWQUOT(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MINUS(z, z') -{ 1 }-> 1 + MINUS(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 QUOT(z, z') -{ 1 }-> 1 + QUOT(minus(z01, z1''), 1 + (1 + z1'')) + MINUS(1 + z01, 1 + z1'') :|: z = 1 + (1 + z01), z' = 1 + (1 + z1''), z01 >= 0, z1'' >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + z1) + MINUS(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + 0) + MINUS(z0, 0) :|: z = 1 + z0, z' = 1 + 0, z0 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z0, z2) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z = 1 + z0, z0 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z0, zWquot(z0'', z1')) + ACTIVATE(1 + z0'' + z1') :|: z1 >= 0, z = 1 + z0, z1' >= 0, z0 >= 0, z' = 1 + z1 + (1 + z0'' + z1'), z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z0, 0) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z = 1 + z0, z0 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z0, 0) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z = 1 + z0, z0 >= 0, v0 >= 0, z0' = v0 SEL(z, z') -{ 1 }-> 1 + SEL(z0, 1 + z0'') + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z = 1 + z0, z0 >= 0, z0' = z0'', z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z0, 1 + z0'' + (1 + (1 + z0''))) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z = 1 + z0, z0 >= 0, z0' = z0'', z0'' >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + QUOT(z0, z2) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z1) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z3) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 activate(z) -{ 0 }-> z0 :|: z = z0, z0 >= 0 activate(z) -{ 0 }-> zWquot(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 activate(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 activate(z) -{ 0 }-> 0 :|: z = 1 + z0, z0 >= 0, v0 >= 0, z0 = v0 activate(z) -{ 0 }-> 1 + z0' :|: z = 1 + z0, z0 >= 0, z0 = z0', z0' >= 0 activate(z) -{ 0 }-> 1 + z0' + (1 + (1 + z0')) :|: z = 1 + z0, z0 >= 0, z0 = z0', z0' >= 0 from(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 from(z) -{ 0 }-> 1 + z0 :|: z = z0, z0 >= 0 from(z) -{ 0 }-> 1 + z0 + (1 + (1 + z0)) :|: z = z0, z0 >= 0 minus(z, z') -{ 0 }-> minus(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 minus(z, z') -{ 0 }-> 0 :|: z = z0, z0 >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 quot(z, z') -{ 0 }-> 0 :|: z0 >= 0, z' = 1 + z0, z = 0 quot(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 quot(z, z') -{ 0 }-> 1 + quot(minus(z02, z11), 1 + (1 + z11)) :|: z = 1 + (1 + z02), z11 >= 0, z02 >= 0, z' = 1 + (1 + z11) quot(z, z') -{ 0 }-> 1 + quot(0, 1 + z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 quot(z, z') -{ 0 }-> 1 + quot(0, 1 + 0) :|: z = 1 + z0, z' = 1 + 0, z0 >= 0 zWquot(z, z') -{ 0 }-> 0 :|: z = z0, z0 >= 0, z' = 0 zWquot(z, z') -{ 0 }-> 0 :|: z0 >= 0, z = 0, z' = z0 zWquot(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 zWquot(z, z') -{ 0 }-> 1 + z0 + z1 :|: z = z0, z1 >= 0, z' = z1, z0 >= 0 zWquot(z, z') -{ 0 }-> 1 + quot(z0, z2) + (1 + activate(z1) + activate(z3)) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ---------------------------------------- (49) SimplificationProof (BOTH BOUNDS(ID, ID)) Simplified the RNTS by moving equalities from the constraints into the right-hand sides. ---------------------------------------- (50) Obligation: Complexity RNTS consisting of the following rules: ACTIVATE(z) -{ 1 }-> 1 + ZWQUOT(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MINUS(z, z') -{ 1 }-> 1 + MINUS(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(minus(z - 2, z' - 2), 1 + (1 + (z' - 2))) + MINUS(1 + (z - 2), 1 + (z' - 2)) :|: z - 2 >= 0, z' - 2 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + 0) + MINUS(z - 1, 0) :|: z' = 1 + 0, z - 1 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + (z' - 1)) + MINUS(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, z2) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, zWquot(z0'', z1')) + ACTIVATE(1 + z0'' + z1') :|: z1 >= 0, z1' >= 0, z - 1 >= 0, z' = 1 + z1 + (1 + z0'' + z1'), z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, v0 >= 0, z0' = v0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'') + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'' + (1 + (1 + z0''))) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + QUOT(z0, z2) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z1) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z3) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 activate(z) -{ 0 }-> z :|: z >= 0 activate(z) -{ 0 }-> zWquot(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 activate(z) -{ 0 }-> 0 :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, z - 1 = v0 activate(z) -{ 0 }-> 1 + z0' :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 activate(z) -{ 0 }-> 1 + z0' + (1 + (1 + z0')) :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 from(z) -{ 0 }-> 0 :|: z >= 0 from(z) -{ 0 }-> 1 + z :|: z >= 0 from(z) -{ 0 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 0 }-> minus(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 1 + quot(minus(z - 2, z' - 2), 1 + (1 + (z' - 2))) :|: z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 0 }-> 1 + quot(0, 1 + 0) :|: z' = 1 + 0, z - 1 >= 0 quot(z, z') -{ 0 }-> 1 + quot(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 zWquot(z, z') -{ 0 }-> 1 + z + z' :|: z' >= 0, z >= 0 zWquot(z, z') -{ 0 }-> 1 + quot(z0, z2) + (1 + activate(z1) + activate(z3)) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ---------------------------------------- (51) CpxRntsAnalysisOrderProof (BOTH BOUNDS(ID, ID)) Found the following analysis order by SCC decomposition: { from } { minus } { MINUS } { quot } { QUOT } { zWquot, activate } { ZWQUOT, ACTIVATE } { SEL } ---------------------------------------- (52) Obligation: Complexity RNTS consisting of the following rules: ACTIVATE(z) -{ 1 }-> 1 + ZWQUOT(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MINUS(z, z') -{ 1 }-> 1 + MINUS(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(minus(z - 2, z' - 2), 1 + (1 + (z' - 2))) + MINUS(1 + (z - 2), 1 + (z' - 2)) :|: z - 2 >= 0, z' - 2 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + 0) + MINUS(z - 1, 0) :|: z' = 1 + 0, z - 1 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + (z' - 1)) + MINUS(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, z2) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, zWquot(z0'', z1')) + ACTIVATE(1 + z0'' + z1') :|: z1 >= 0, z1' >= 0, z - 1 >= 0, z' = 1 + z1 + (1 + z0'' + z1'), z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, v0 >= 0, z0' = v0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'') + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'' + (1 + (1 + z0''))) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + QUOT(z0, z2) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z1) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z3) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 activate(z) -{ 0 }-> z :|: z >= 0 activate(z) -{ 0 }-> zWquot(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 activate(z) -{ 0 }-> 0 :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, z - 1 = v0 activate(z) -{ 0 }-> 1 + z0' :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 activate(z) -{ 0 }-> 1 + z0' + (1 + (1 + z0')) :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 from(z) -{ 0 }-> 0 :|: z >= 0 from(z) -{ 0 }-> 1 + z :|: z >= 0 from(z) -{ 0 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 0 }-> minus(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 1 + quot(minus(z - 2, z' - 2), 1 + (1 + (z' - 2))) :|: z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 0 }-> 1 + quot(0, 1 + 0) :|: z' = 1 + 0, z - 1 >= 0 quot(z, z') -{ 0 }-> 1 + quot(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 zWquot(z, z') -{ 0 }-> 1 + z + z' :|: z' >= 0, z >= 0 zWquot(z, z') -{ 0 }-> 1 + quot(z0, z2) + (1 + activate(z1) + activate(z3)) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 Function symbols to be analyzed: {from}, {minus}, {MINUS}, {quot}, {QUOT}, {zWquot,activate}, {ZWQUOT,ACTIVATE}, {SEL} ---------------------------------------- (53) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (54) Obligation: Complexity RNTS consisting of the following rules: ACTIVATE(z) -{ 1 }-> 1 + ZWQUOT(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MINUS(z, z') -{ 1 }-> 1 + MINUS(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(minus(z - 2, z' - 2), 1 + (1 + (z' - 2))) + MINUS(1 + (z - 2), 1 + (z' - 2)) :|: z - 2 >= 0, z' - 2 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + 0) + MINUS(z - 1, 0) :|: z' = 1 + 0, z - 1 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + (z' - 1)) + MINUS(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, z2) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, zWquot(z0'', z1')) + ACTIVATE(1 + z0'' + z1') :|: z1 >= 0, z1' >= 0, z - 1 >= 0, z' = 1 + z1 + (1 + z0'' + z1'), z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, v0 >= 0, z0' = v0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'') + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'' + (1 + (1 + z0''))) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + QUOT(z0, z2) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z1) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z3) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 activate(z) -{ 0 }-> z :|: z >= 0 activate(z) -{ 0 }-> zWquot(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 activate(z) -{ 0 }-> 0 :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, z - 1 = v0 activate(z) -{ 0 }-> 1 + z0' :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 activate(z) -{ 0 }-> 1 + z0' + (1 + (1 + z0')) :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 from(z) -{ 0 }-> 0 :|: z >= 0 from(z) -{ 0 }-> 1 + z :|: z >= 0 from(z) -{ 0 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 0 }-> minus(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 1 + quot(minus(z - 2, z' - 2), 1 + (1 + (z' - 2))) :|: z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 0 }-> 1 + quot(0, 1 + 0) :|: z' = 1 + 0, z - 1 >= 0 quot(z, z') -{ 0 }-> 1 + quot(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 zWquot(z, z') -{ 0 }-> 1 + z + z' :|: z' >= 0, z >= 0 zWquot(z, z') -{ 0 }-> 1 + quot(z0, z2) + (1 + activate(z1) + activate(z3)) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 Function symbols to be analyzed: {from}, {minus}, {MINUS}, {quot}, {QUOT}, {zWquot,activate}, {ZWQUOT,ACTIVATE}, {SEL} ---------------------------------------- (55) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: from after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 3 + 2*z ---------------------------------------- (56) Obligation: Complexity RNTS consisting of the following rules: ACTIVATE(z) -{ 1 }-> 1 + ZWQUOT(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MINUS(z, z') -{ 1 }-> 1 + MINUS(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(minus(z - 2, z' - 2), 1 + (1 + (z' - 2))) + MINUS(1 + (z - 2), 1 + (z' - 2)) :|: z - 2 >= 0, z' - 2 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + 0) + MINUS(z - 1, 0) :|: z' = 1 + 0, z - 1 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + (z' - 1)) + MINUS(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, z2) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, zWquot(z0'', z1')) + ACTIVATE(1 + z0'' + z1') :|: z1 >= 0, z1' >= 0, z - 1 >= 0, z' = 1 + z1 + (1 + z0'' + z1'), z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, v0 >= 0, z0' = v0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'') + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'' + (1 + (1 + z0''))) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + QUOT(z0, z2) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z1) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z3) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 activate(z) -{ 0 }-> z :|: z >= 0 activate(z) -{ 0 }-> zWquot(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 activate(z) -{ 0 }-> 0 :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, z - 1 = v0 activate(z) -{ 0 }-> 1 + z0' :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 activate(z) -{ 0 }-> 1 + z0' + (1 + (1 + z0')) :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 from(z) -{ 0 }-> 0 :|: z >= 0 from(z) -{ 0 }-> 1 + z :|: z >= 0 from(z) -{ 0 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 0 }-> minus(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 1 + quot(minus(z - 2, z' - 2), 1 + (1 + (z' - 2))) :|: z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 0 }-> 1 + quot(0, 1 + 0) :|: z' = 1 + 0, z - 1 >= 0 quot(z, z') -{ 0 }-> 1 + quot(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 zWquot(z, z') -{ 0 }-> 1 + z + z' :|: z' >= 0, z >= 0 zWquot(z, z') -{ 0 }-> 1 + quot(z0, z2) + (1 + activate(z1) + activate(z3)) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 Function symbols to be analyzed: {from}, {minus}, {MINUS}, {quot}, {QUOT}, {zWquot,activate}, {ZWQUOT,ACTIVATE}, {SEL} Previous analysis results are: from: runtime: ?, size: O(n^1) [3 + 2*z] ---------------------------------------- (57) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: from after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (58) Obligation: Complexity RNTS consisting of the following rules: ACTIVATE(z) -{ 1 }-> 1 + ZWQUOT(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MINUS(z, z') -{ 1 }-> 1 + MINUS(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(minus(z - 2, z' - 2), 1 + (1 + (z' - 2))) + MINUS(1 + (z - 2), 1 + (z' - 2)) :|: z - 2 >= 0, z' - 2 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + 0) + MINUS(z - 1, 0) :|: z' = 1 + 0, z - 1 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + (z' - 1)) + MINUS(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, z2) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, zWquot(z0'', z1')) + ACTIVATE(1 + z0'' + z1') :|: z1 >= 0, z1' >= 0, z - 1 >= 0, z' = 1 + z1 + (1 + z0'' + z1'), z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, v0 >= 0, z0' = v0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'') + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'' + (1 + (1 + z0''))) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + QUOT(z0, z2) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z1) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z3) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 activate(z) -{ 0 }-> z :|: z >= 0 activate(z) -{ 0 }-> zWquot(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 activate(z) -{ 0 }-> 0 :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, z - 1 = v0 activate(z) -{ 0 }-> 1 + z0' :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 activate(z) -{ 0 }-> 1 + z0' + (1 + (1 + z0')) :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 from(z) -{ 0 }-> 0 :|: z >= 0 from(z) -{ 0 }-> 1 + z :|: z >= 0 from(z) -{ 0 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 0 }-> minus(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 1 + quot(minus(z - 2, z' - 2), 1 + (1 + (z' - 2))) :|: z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 0 }-> 1 + quot(0, 1 + 0) :|: z' = 1 + 0, z - 1 >= 0 quot(z, z') -{ 0 }-> 1 + quot(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 zWquot(z, z') -{ 0 }-> 1 + z + z' :|: z' >= 0, z >= 0 zWquot(z, z') -{ 0 }-> 1 + quot(z0, z2) + (1 + activate(z1) + activate(z3)) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 Function symbols to be analyzed: {minus}, {MINUS}, {quot}, {QUOT}, {zWquot,activate}, {ZWQUOT,ACTIVATE}, {SEL} Previous analysis results are: from: runtime: O(1) [0], size: O(n^1) [3 + 2*z] ---------------------------------------- (59) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (60) Obligation: Complexity RNTS consisting of the following rules: ACTIVATE(z) -{ 1 }-> 1 + ZWQUOT(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MINUS(z, z') -{ 1 }-> 1 + MINUS(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(minus(z - 2, z' - 2), 1 + (1 + (z' - 2))) + MINUS(1 + (z - 2), 1 + (z' - 2)) :|: z - 2 >= 0, z' - 2 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + 0) + MINUS(z - 1, 0) :|: z' = 1 + 0, z - 1 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + (z' - 1)) + MINUS(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, z2) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, zWquot(z0'', z1')) + ACTIVATE(1 + z0'' + z1') :|: z1 >= 0, z1' >= 0, z - 1 >= 0, z' = 1 + z1 + (1 + z0'' + z1'), z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, v0 >= 0, z0' = v0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'') + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'' + (1 + (1 + z0''))) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + QUOT(z0, z2) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z1) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z3) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 activate(z) -{ 0 }-> z :|: z >= 0 activate(z) -{ 0 }-> zWquot(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 activate(z) -{ 0 }-> 0 :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, z - 1 = v0 activate(z) -{ 0 }-> 1 + z0' :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 activate(z) -{ 0 }-> 1 + z0' + (1 + (1 + z0')) :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 from(z) -{ 0 }-> 0 :|: z >= 0 from(z) -{ 0 }-> 1 + z :|: z >= 0 from(z) -{ 0 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 0 }-> minus(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 1 + quot(minus(z - 2, z' - 2), 1 + (1 + (z' - 2))) :|: z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 0 }-> 1 + quot(0, 1 + 0) :|: z' = 1 + 0, z - 1 >= 0 quot(z, z') -{ 0 }-> 1 + quot(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 zWquot(z, z') -{ 0 }-> 1 + z + z' :|: z' >= 0, z >= 0 zWquot(z, z') -{ 0 }-> 1 + quot(z0, z2) + (1 + activate(z1) + activate(z3)) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 Function symbols to be analyzed: {minus}, {MINUS}, {quot}, {QUOT}, {zWquot,activate}, {ZWQUOT,ACTIVATE}, {SEL} Previous analysis results are: from: runtime: O(1) [0], size: O(n^1) [3 + 2*z] ---------------------------------------- (61) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: minus after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (62) Obligation: Complexity RNTS consisting of the following rules: ACTIVATE(z) -{ 1 }-> 1 + ZWQUOT(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MINUS(z, z') -{ 1 }-> 1 + MINUS(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(minus(z - 2, z' - 2), 1 + (1 + (z' - 2))) + MINUS(1 + (z - 2), 1 + (z' - 2)) :|: z - 2 >= 0, z' - 2 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + 0) + MINUS(z - 1, 0) :|: z' = 1 + 0, z - 1 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + (z' - 1)) + MINUS(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, z2) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, zWquot(z0'', z1')) + ACTIVATE(1 + z0'' + z1') :|: z1 >= 0, z1' >= 0, z - 1 >= 0, z' = 1 + z1 + (1 + z0'' + z1'), z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, v0 >= 0, z0' = v0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'') + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'' + (1 + (1 + z0''))) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + QUOT(z0, z2) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z1) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z3) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 activate(z) -{ 0 }-> z :|: z >= 0 activate(z) -{ 0 }-> zWquot(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 activate(z) -{ 0 }-> 0 :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, z - 1 = v0 activate(z) -{ 0 }-> 1 + z0' :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 activate(z) -{ 0 }-> 1 + z0' + (1 + (1 + z0')) :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 from(z) -{ 0 }-> 0 :|: z >= 0 from(z) -{ 0 }-> 1 + z :|: z >= 0 from(z) -{ 0 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 0 }-> minus(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 1 + quot(minus(z - 2, z' - 2), 1 + (1 + (z' - 2))) :|: z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 0 }-> 1 + quot(0, 1 + 0) :|: z' = 1 + 0, z - 1 >= 0 quot(z, z') -{ 0 }-> 1 + quot(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 zWquot(z, z') -{ 0 }-> 1 + z + z' :|: z' >= 0, z >= 0 zWquot(z, z') -{ 0 }-> 1 + quot(z0, z2) + (1 + activate(z1) + activate(z3)) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 Function symbols to be analyzed: {minus}, {MINUS}, {quot}, {QUOT}, {zWquot,activate}, {ZWQUOT,ACTIVATE}, {SEL} Previous analysis results are: from: runtime: O(1) [0], size: O(n^1) [3 + 2*z] minus: runtime: ?, size: O(1) [0] ---------------------------------------- (63) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: minus after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (64) Obligation: Complexity RNTS consisting of the following rules: ACTIVATE(z) -{ 1 }-> 1 + ZWQUOT(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MINUS(z, z') -{ 1 }-> 1 + MINUS(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(minus(z - 2, z' - 2), 1 + (1 + (z' - 2))) + MINUS(1 + (z - 2), 1 + (z' - 2)) :|: z - 2 >= 0, z' - 2 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + 0) + MINUS(z - 1, 0) :|: z' = 1 + 0, z - 1 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + (z' - 1)) + MINUS(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, z2) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, zWquot(z0'', z1')) + ACTIVATE(1 + z0'' + z1') :|: z1 >= 0, z1' >= 0, z - 1 >= 0, z' = 1 + z1 + (1 + z0'' + z1'), z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, v0 >= 0, z0' = v0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'') + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'' + (1 + (1 + z0''))) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + QUOT(z0, z2) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z1) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z3) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 activate(z) -{ 0 }-> z :|: z >= 0 activate(z) -{ 0 }-> zWquot(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 activate(z) -{ 0 }-> 0 :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, z - 1 = v0 activate(z) -{ 0 }-> 1 + z0' :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 activate(z) -{ 0 }-> 1 + z0' + (1 + (1 + z0')) :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 from(z) -{ 0 }-> 0 :|: z >= 0 from(z) -{ 0 }-> 1 + z :|: z >= 0 from(z) -{ 0 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 0 }-> minus(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 1 + quot(minus(z - 2, z' - 2), 1 + (1 + (z' - 2))) :|: z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 0 }-> 1 + quot(0, 1 + 0) :|: z' = 1 + 0, z - 1 >= 0 quot(z, z') -{ 0 }-> 1 + quot(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 zWquot(z, z') -{ 0 }-> 1 + z + z' :|: z' >= 0, z >= 0 zWquot(z, z') -{ 0 }-> 1 + quot(z0, z2) + (1 + activate(z1) + activate(z3)) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 Function symbols to be analyzed: {MINUS}, {quot}, {QUOT}, {zWquot,activate}, {ZWQUOT,ACTIVATE}, {SEL} Previous analysis results are: from: runtime: O(1) [0], size: O(n^1) [3 + 2*z] minus: runtime: O(1) [0], size: O(1) [0] ---------------------------------------- (65) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (66) Obligation: Complexity RNTS consisting of the following rules: ACTIVATE(z) -{ 1 }-> 1 + ZWQUOT(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MINUS(z, z') -{ 1 }-> 1 + MINUS(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(s, 1 + (1 + (z' - 2))) + MINUS(1 + (z - 2), 1 + (z' - 2)) :|: s >= 0, s <= 0, z - 2 >= 0, z' - 2 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + 0) + MINUS(z - 1, 0) :|: z' = 1 + 0, z - 1 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + (z' - 1)) + MINUS(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, z2) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, zWquot(z0'', z1')) + ACTIVATE(1 + z0'' + z1') :|: z1 >= 0, z1' >= 0, z - 1 >= 0, z' = 1 + z1 + (1 + z0'' + z1'), z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, v0 >= 0, z0' = v0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'') + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'' + (1 + (1 + z0''))) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + QUOT(z0, z2) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z1) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z3) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 activate(z) -{ 0 }-> z :|: z >= 0 activate(z) -{ 0 }-> zWquot(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 activate(z) -{ 0 }-> 0 :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, z - 1 = v0 activate(z) -{ 0 }-> 1 + z0' :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 activate(z) -{ 0 }-> 1 + z0' + (1 + (1 + z0')) :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 from(z) -{ 0 }-> 0 :|: z >= 0 from(z) -{ 0 }-> 1 + z :|: z >= 0 from(z) -{ 0 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 1 + quot(s', 1 + (1 + (z' - 2))) :|: s' >= 0, s' <= 0, z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 0 }-> 1 + quot(0, 1 + 0) :|: z' = 1 + 0, z - 1 >= 0 quot(z, z') -{ 0 }-> 1 + quot(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 zWquot(z, z') -{ 0 }-> 1 + z + z' :|: z' >= 0, z >= 0 zWquot(z, z') -{ 0 }-> 1 + quot(z0, z2) + (1 + activate(z1) + activate(z3)) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 Function symbols to be analyzed: {MINUS}, {quot}, {QUOT}, {zWquot,activate}, {ZWQUOT,ACTIVATE}, {SEL} Previous analysis results are: from: runtime: O(1) [0], size: O(n^1) [3 + 2*z] minus: runtime: O(1) [0], size: O(1) [0] ---------------------------------------- (67) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: MINUS after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (68) Obligation: Complexity RNTS consisting of the following rules: ACTIVATE(z) -{ 1 }-> 1 + ZWQUOT(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MINUS(z, z') -{ 1 }-> 1 + MINUS(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(s, 1 + (1 + (z' - 2))) + MINUS(1 + (z - 2), 1 + (z' - 2)) :|: s >= 0, s <= 0, z - 2 >= 0, z' - 2 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + 0) + MINUS(z - 1, 0) :|: z' = 1 + 0, z - 1 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + (z' - 1)) + MINUS(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, z2) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, zWquot(z0'', z1')) + ACTIVATE(1 + z0'' + z1') :|: z1 >= 0, z1' >= 0, z - 1 >= 0, z' = 1 + z1 + (1 + z0'' + z1'), z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, v0 >= 0, z0' = v0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'') + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'' + (1 + (1 + z0''))) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + QUOT(z0, z2) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z1) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z3) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 activate(z) -{ 0 }-> z :|: z >= 0 activate(z) -{ 0 }-> zWquot(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 activate(z) -{ 0 }-> 0 :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, z - 1 = v0 activate(z) -{ 0 }-> 1 + z0' :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 activate(z) -{ 0 }-> 1 + z0' + (1 + (1 + z0')) :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 from(z) -{ 0 }-> 0 :|: z >= 0 from(z) -{ 0 }-> 1 + z :|: z >= 0 from(z) -{ 0 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 1 + quot(s', 1 + (1 + (z' - 2))) :|: s' >= 0, s' <= 0, z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 0 }-> 1 + quot(0, 1 + 0) :|: z' = 1 + 0, z - 1 >= 0 quot(z, z') -{ 0 }-> 1 + quot(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 zWquot(z, z') -{ 0 }-> 1 + z + z' :|: z' >= 0, z >= 0 zWquot(z, z') -{ 0 }-> 1 + quot(z0, z2) + (1 + activate(z1) + activate(z3)) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 Function symbols to be analyzed: {MINUS}, {quot}, {QUOT}, {zWquot,activate}, {ZWQUOT,ACTIVATE}, {SEL} Previous analysis results are: from: runtime: O(1) [0], size: O(n^1) [3 + 2*z] minus: runtime: O(1) [0], size: O(1) [0] MINUS: runtime: ?, size: O(1) [0] ---------------------------------------- (69) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: MINUS after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: z' ---------------------------------------- (70) Obligation: Complexity RNTS consisting of the following rules: ACTIVATE(z) -{ 1 }-> 1 + ZWQUOT(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MINUS(z, z') -{ 1 }-> 1 + MINUS(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(s, 1 + (1 + (z' - 2))) + MINUS(1 + (z - 2), 1 + (z' - 2)) :|: s >= 0, s <= 0, z - 2 >= 0, z' - 2 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + 0) + MINUS(z - 1, 0) :|: z' = 1 + 0, z - 1 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + (z' - 1)) + MINUS(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, z2) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, zWquot(z0'', z1')) + ACTIVATE(1 + z0'' + z1') :|: z1 >= 0, z1' >= 0, z - 1 >= 0, z' = 1 + z1 + (1 + z0'' + z1'), z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, v0 >= 0, z0' = v0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'') + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'' + (1 + (1 + z0''))) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + QUOT(z0, z2) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z1) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z3) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 activate(z) -{ 0 }-> z :|: z >= 0 activate(z) -{ 0 }-> zWquot(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 activate(z) -{ 0 }-> 0 :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, z - 1 = v0 activate(z) -{ 0 }-> 1 + z0' :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 activate(z) -{ 0 }-> 1 + z0' + (1 + (1 + z0')) :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 from(z) -{ 0 }-> 0 :|: z >= 0 from(z) -{ 0 }-> 1 + z :|: z >= 0 from(z) -{ 0 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 1 + quot(s', 1 + (1 + (z' - 2))) :|: s' >= 0, s' <= 0, z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 0 }-> 1 + quot(0, 1 + 0) :|: z' = 1 + 0, z - 1 >= 0 quot(z, z') -{ 0 }-> 1 + quot(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 zWquot(z, z') -{ 0 }-> 1 + z + z' :|: z' >= 0, z >= 0 zWquot(z, z') -{ 0 }-> 1 + quot(z0, z2) + (1 + activate(z1) + activate(z3)) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 Function symbols to be analyzed: {quot}, {QUOT}, {zWquot,activate}, {ZWQUOT,ACTIVATE}, {SEL} Previous analysis results are: from: runtime: O(1) [0], size: O(n^1) [3 + 2*z] minus: runtime: O(1) [0], size: O(1) [0] MINUS: runtime: O(n^1) [z'], size: O(1) [0] ---------------------------------------- (71) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (72) Obligation: Complexity RNTS consisting of the following rules: ACTIVATE(z) -{ 1 }-> 1 + ZWQUOT(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MINUS(z, z') -{ z' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ z' }-> 1 + QUOT(s, 1 + (1 + (z' - 2))) + s3 :|: s3 >= 0, s3 <= 0, s >= 0, s <= 0, z - 2 >= 0, z' - 2 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + 0) + s2 :|: s2 >= 0, s2 <= 0, z' = 1 + 0, z - 1 >= 0 QUOT(z, z') -{ z' }-> 1 + QUOT(0, 1 + (z' - 1)) + s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z - 1 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, z2) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, zWquot(z0'', z1')) + ACTIVATE(1 + z0'' + z1') :|: z1 >= 0, z1' >= 0, z - 1 >= 0, z' = 1 + z1 + (1 + z0'' + z1'), z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, v0 >= 0, z0' = v0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'') + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'' + (1 + (1 + z0''))) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + QUOT(z0, z2) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z1) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z3) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 activate(z) -{ 0 }-> z :|: z >= 0 activate(z) -{ 0 }-> zWquot(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 activate(z) -{ 0 }-> 0 :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, z - 1 = v0 activate(z) -{ 0 }-> 1 + z0' :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 activate(z) -{ 0 }-> 1 + z0' + (1 + (1 + z0')) :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 from(z) -{ 0 }-> 0 :|: z >= 0 from(z) -{ 0 }-> 1 + z :|: z >= 0 from(z) -{ 0 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 1 + quot(s', 1 + (1 + (z' - 2))) :|: s' >= 0, s' <= 0, z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 0 }-> 1 + quot(0, 1 + 0) :|: z' = 1 + 0, z - 1 >= 0 quot(z, z') -{ 0 }-> 1 + quot(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 zWquot(z, z') -{ 0 }-> 1 + z + z' :|: z' >= 0, z >= 0 zWquot(z, z') -{ 0 }-> 1 + quot(z0, z2) + (1 + activate(z1) + activate(z3)) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 Function symbols to be analyzed: {quot}, {QUOT}, {zWquot,activate}, {ZWQUOT,ACTIVATE}, {SEL} Previous analysis results are: from: runtime: O(1) [0], size: O(n^1) [3 + 2*z] minus: runtime: O(1) [0], size: O(1) [0] MINUS: runtime: O(n^1) [z'], size: O(1) [0] ---------------------------------------- (73) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: quot after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 1 ---------------------------------------- (74) Obligation: Complexity RNTS consisting of the following rules: ACTIVATE(z) -{ 1 }-> 1 + ZWQUOT(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MINUS(z, z') -{ z' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ z' }-> 1 + QUOT(s, 1 + (1 + (z' - 2))) + s3 :|: s3 >= 0, s3 <= 0, s >= 0, s <= 0, z - 2 >= 0, z' - 2 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + 0) + s2 :|: s2 >= 0, s2 <= 0, z' = 1 + 0, z - 1 >= 0 QUOT(z, z') -{ z' }-> 1 + QUOT(0, 1 + (z' - 1)) + s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z - 1 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, z2) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, zWquot(z0'', z1')) + ACTIVATE(1 + z0'' + z1') :|: z1 >= 0, z1' >= 0, z - 1 >= 0, z' = 1 + z1 + (1 + z0'' + z1'), z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, v0 >= 0, z0' = v0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'') + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'' + (1 + (1 + z0''))) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + QUOT(z0, z2) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z1) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z3) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 activate(z) -{ 0 }-> z :|: z >= 0 activate(z) -{ 0 }-> zWquot(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 activate(z) -{ 0 }-> 0 :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, z - 1 = v0 activate(z) -{ 0 }-> 1 + z0' :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 activate(z) -{ 0 }-> 1 + z0' + (1 + (1 + z0')) :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 from(z) -{ 0 }-> 0 :|: z >= 0 from(z) -{ 0 }-> 1 + z :|: z >= 0 from(z) -{ 0 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 1 + quot(s', 1 + (1 + (z' - 2))) :|: s' >= 0, s' <= 0, z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 0 }-> 1 + quot(0, 1 + 0) :|: z' = 1 + 0, z - 1 >= 0 quot(z, z') -{ 0 }-> 1 + quot(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 zWquot(z, z') -{ 0 }-> 1 + z + z' :|: z' >= 0, z >= 0 zWquot(z, z') -{ 0 }-> 1 + quot(z0, z2) + (1 + activate(z1) + activate(z3)) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 Function symbols to be analyzed: {quot}, {QUOT}, {zWquot,activate}, {ZWQUOT,ACTIVATE}, {SEL} Previous analysis results are: from: runtime: O(1) [0], size: O(n^1) [3 + 2*z] minus: runtime: O(1) [0], size: O(1) [0] MINUS: runtime: O(n^1) [z'], size: O(1) [0] quot: runtime: ?, size: O(1) [1] ---------------------------------------- (75) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: quot after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (76) Obligation: Complexity RNTS consisting of the following rules: ACTIVATE(z) -{ 1 }-> 1 + ZWQUOT(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MINUS(z, z') -{ z' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ z' }-> 1 + QUOT(s, 1 + (1 + (z' - 2))) + s3 :|: s3 >= 0, s3 <= 0, s >= 0, s <= 0, z - 2 >= 0, z' - 2 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + 0) + s2 :|: s2 >= 0, s2 <= 0, z' = 1 + 0, z - 1 >= 0 QUOT(z, z') -{ z' }-> 1 + QUOT(0, 1 + (z' - 1)) + s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z - 1 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, z2) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, zWquot(z0'', z1')) + ACTIVATE(1 + z0'' + z1') :|: z1 >= 0, z1' >= 0, z - 1 >= 0, z' = 1 + z1 + (1 + z0'' + z1'), z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, v0 >= 0, z0' = v0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'') + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'' + (1 + (1 + z0''))) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + QUOT(z0, z2) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z1) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z3) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 activate(z) -{ 0 }-> z :|: z >= 0 activate(z) -{ 0 }-> zWquot(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 activate(z) -{ 0 }-> 0 :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, z - 1 = v0 activate(z) -{ 0 }-> 1 + z0' :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 activate(z) -{ 0 }-> 1 + z0' + (1 + (1 + z0')) :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 from(z) -{ 0 }-> 0 :|: z >= 0 from(z) -{ 0 }-> 1 + z :|: z >= 0 from(z) -{ 0 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 1 + quot(s', 1 + (1 + (z' - 2))) :|: s' >= 0, s' <= 0, z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 0 }-> 1 + quot(0, 1 + 0) :|: z' = 1 + 0, z - 1 >= 0 quot(z, z') -{ 0 }-> 1 + quot(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 zWquot(z, z') -{ 0 }-> 1 + z + z' :|: z' >= 0, z >= 0 zWquot(z, z') -{ 0 }-> 1 + quot(z0, z2) + (1 + activate(z1) + activate(z3)) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 Function symbols to be analyzed: {QUOT}, {zWquot,activate}, {ZWQUOT,ACTIVATE}, {SEL} Previous analysis results are: from: runtime: O(1) [0], size: O(n^1) [3 + 2*z] minus: runtime: O(1) [0], size: O(1) [0] MINUS: runtime: O(n^1) [z'], size: O(1) [0] quot: runtime: O(1) [0], size: O(1) [1] ---------------------------------------- (77) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (78) Obligation: Complexity RNTS consisting of the following rules: ACTIVATE(z) -{ 1 }-> 1 + ZWQUOT(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MINUS(z, z') -{ z' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ z' }-> 1 + QUOT(s, 1 + (1 + (z' - 2))) + s3 :|: s3 >= 0, s3 <= 0, s >= 0, s <= 0, z - 2 >= 0, z' - 2 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + 0) + s2 :|: s2 >= 0, s2 <= 0, z' = 1 + 0, z - 1 >= 0 QUOT(z, z') -{ z' }-> 1 + QUOT(0, 1 + (z' - 1)) + s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z - 1 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, z2) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, zWquot(z0'', z1')) + ACTIVATE(1 + z0'' + z1') :|: z1 >= 0, z1' >= 0, z - 1 >= 0, z' = 1 + z1 + (1 + z0'' + z1'), z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, v0 >= 0, z0' = v0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'') + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'' + (1 + (1 + z0''))) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + QUOT(z0, z2) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z1) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z3) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 activate(z) -{ 0 }-> z :|: z >= 0 activate(z) -{ 0 }-> zWquot(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 activate(z) -{ 0 }-> 0 :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, z - 1 = v0 activate(z) -{ 0 }-> 1 + z0' :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 activate(z) -{ 0 }-> 1 + z0' + (1 + (1 + z0')) :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 from(z) -{ 0 }-> 0 :|: z >= 0 from(z) -{ 0 }-> 1 + z :|: z >= 0 from(z) -{ 0 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 1 + s6 :|: s6 >= 0, s6 <= 1, z' = 1 + 0, z - 1 >= 0 quot(z, z') -{ 0 }-> 1 + s7 :|: s7 >= 0, s7 <= 1, s' >= 0, s' <= 0, z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 0 }-> 1 + s8 :|: s8 >= 0, s8 <= 1, z' - 1 >= 0, z - 1 >= 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 zWquot(z, z') -{ 0 }-> 1 + s5 + (1 + activate(z1) + activate(z3)) :|: s5 >= 0, s5 <= 1, z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 zWquot(z, z') -{ 0 }-> 1 + z + z' :|: z' >= 0, z >= 0 Function symbols to be analyzed: {QUOT}, {zWquot,activate}, {ZWQUOT,ACTIVATE}, {SEL} Previous analysis results are: from: runtime: O(1) [0], size: O(n^1) [3 + 2*z] minus: runtime: O(1) [0], size: O(1) [0] MINUS: runtime: O(n^1) [z'], size: O(1) [0] quot: runtime: O(1) [0], size: O(1) [1] ---------------------------------------- (79) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: QUOT after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (80) Obligation: Complexity RNTS consisting of the following rules: ACTIVATE(z) -{ 1 }-> 1 + ZWQUOT(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MINUS(z, z') -{ z' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ z' }-> 1 + QUOT(s, 1 + (1 + (z' - 2))) + s3 :|: s3 >= 0, s3 <= 0, s >= 0, s <= 0, z - 2 >= 0, z' - 2 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + 0) + s2 :|: s2 >= 0, s2 <= 0, z' = 1 + 0, z - 1 >= 0 QUOT(z, z') -{ z' }-> 1 + QUOT(0, 1 + (z' - 1)) + s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z - 1 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, z2) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, zWquot(z0'', z1')) + ACTIVATE(1 + z0'' + z1') :|: z1 >= 0, z1' >= 0, z - 1 >= 0, z' = 1 + z1 + (1 + z0'' + z1'), z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, v0 >= 0, z0' = v0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'') + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'' + (1 + (1 + z0''))) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + QUOT(z0, z2) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z1) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z3) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 activate(z) -{ 0 }-> z :|: z >= 0 activate(z) -{ 0 }-> zWquot(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 activate(z) -{ 0 }-> 0 :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, z - 1 = v0 activate(z) -{ 0 }-> 1 + z0' :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 activate(z) -{ 0 }-> 1 + z0' + (1 + (1 + z0')) :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 from(z) -{ 0 }-> 0 :|: z >= 0 from(z) -{ 0 }-> 1 + z :|: z >= 0 from(z) -{ 0 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 1 + s6 :|: s6 >= 0, s6 <= 1, z' = 1 + 0, z - 1 >= 0 quot(z, z') -{ 0 }-> 1 + s7 :|: s7 >= 0, s7 <= 1, s' >= 0, s' <= 0, z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 0 }-> 1 + s8 :|: s8 >= 0, s8 <= 1, z' - 1 >= 0, z - 1 >= 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 zWquot(z, z') -{ 0 }-> 1 + s5 + (1 + activate(z1) + activate(z3)) :|: s5 >= 0, s5 <= 1, z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 zWquot(z, z') -{ 0 }-> 1 + z + z' :|: z' >= 0, z >= 0 Function symbols to be analyzed: {QUOT}, {zWquot,activate}, {ZWQUOT,ACTIVATE}, {SEL} Previous analysis results are: from: runtime: O(1) [0], size: O(n^1) [3 + 2*z] minus: runtime: O(1) [0], size: O(1) [0] MINUS: runtime: O(n^1) [z'], size: O(1) [0] quot: runtime: O(1) [0], size: O(1) [1] QUOT: runtime: ?, size: O(1) [0] ---------------------------------------- (81) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: QUOT after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 1 + z' ---------------------------------------- (82) Obligation: Complexity RNTS consisting of the following rules: ACTIVATE(z) -{ 1 }-> 1 + ZWQUOT(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MINUS(z, z') -{ z' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ z' }-> 1 + QUOT(s, 1 + (1 + (z' - 2))) + s3 :|: s3 >= 0, s3 <= 0, s >= 0, s <= 0, z - 2 >= 0, z' - 2 >= 0 QUOT(z, z') -{ 1 }-> 1 + QUOT(0, 1 + 0) + s2 :|: s2 >= 0, s2 <= 0, z' = 1 + 0, z - 1 >= 0 QUOT(z, z') -{ z' }-> 1 + QUOT(0, 1 + (z' - 1)) + s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z - 1 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, z2) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, zWquot(z0'', z1')) + ACTIVATE(1 + z0'' + z1') :|: z1 >= 0, z1' >= 0, z - 1 >= 0, z' = 1 + z1 + (1 + z0'' + z1'), z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, v0 >= 0, z0' = v0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'') + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'' + (1 + (1 + z0''))) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + QUOT(z0, z2) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z1) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z3) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 activate(z) -{ 0 }-> z :|: z >= 0 activate(z) -{ 0 }-> zWquot(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 activate(z) -{ 0 }-> 0 :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, z - 1 = v0 activate(z) -{ 0 }-> 1 + z0' :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 activate(z) -{ 0 }-> 1 + z0' + (1 + (1 + z0')) :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 from(z) -{ 0 }-> 0 :|: z >= 0 from(z) -{ 0 }-> 1 + z :|: z >= 0 from(z) -{ 0 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 1 + s6 :|: s6 >= 0, s6 <= 1, z' = 1 + 0, z - 1 >= 0 quot(z, z') -{ 0 }-> 1 + s7 :|: s7 >= 0, s7 <= 1, s' >= 0, s' <= 0, z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 0 }-> 1 + s8 :|: s8 >= 0, s8 <= 1, z' - 1 >= 0, z - 1 >= 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 zWquot(z, z') -{ 0 }-> 1 + s5 + (1 + activate(z1) + activate(z3)) :|: s5 >= 0, s5 <= 1, z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 zWquot(z, z') -{ 0 }-> 1 + z + z' :|: z' >= 0, z >= 0 Function symbols to be analyzed: {zWquot,activate}, {ZWQUOT,ACTIVATE}, {SEL} Previous analysis results are: from: runtime: O(1) [0], size: O(n^1) [3 + 2*z] minus: runtime: O(1) [0], size: O(1) [0] MINUS: runtime: O(n^1) [z'], size: O(1) [0] quot: runtime: O(1) [0], size: O(1) [1] QUOT: runtime: O(n^1) [1 + z'], size: O(1) [0] ---------------------------------------- (83) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (84) Obligation: Complexity RNTS consisting of the following rules: ACTIVATE(z) -{ 1 }-> 1 + ZWQUOT(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MINUS(z, z') -{ z' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ 1 + 2*z' }-> 1 + s10 + s3 :|: s10 >= 0, s10 <= 0, s3 >= 0, s3 <= 0, s >= 0, s <= 0, z - 2 >= 0, z' - 2 >= 0 QUOT(z, z') -{ 1 + 2*z' }-> 1 + s11 + s4 :|: s11 >= 0, s11 <= 0, s4 >= 0, s4 <= 0, z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ 3 }-> 1 + s9 + s2 :|: s9 >= 0, s9 <= 0, s2 >= 0, s2 <= 0, z' = 1 + 0, z - 1 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, z2) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, zWquot(z0'', z1')) + ACTIVATE(1 + z0'' + z1') :|: z1 >= 0, z1' >= 0, z - 1 >= 0, z' = 1 + z1 + (1 + z0'' + z1'), z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, v0 >= 0, z0' = v0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'') + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'' + (1 + (1 + z0''))) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 ZWQUOT(z, z') -{ 2 + z2 }-> 1 + s12 :|: s12 >= 0, s12 <= 0, z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z1) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z3) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 activate(z) -{ 0 }-> z :|: z >= 0 activate(z) -{ 0 }-> zWquot(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 activate(z) -{ 0 }-> 0 :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, z - 1 = v0 activate(z) -{ 0 }-> 1 + z0' :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 activate(z) -{ 0 }-> 1 + z0' + (1 + (1 + z0')) :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 from(z) -{ 0 }-> 0 :|: z >= 0 from(z) -{ 0 }-> 1 + z :|: z >= 0 from(z) -{ 0 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 1 + s6 :|: s6 >= 0, s6 <= 1, z' = 1 + 0, z - 1 >= 0 quot(z, z') -{ 0 }-> 1 + s7 :|: s7 >= 0, s7 <= 1, s' >= 0, s' <= 0, z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 0 }-> 1 + s8 :|: s8 >= 0, s8 <= 1, z' - 1 >= 0, z - 1 >= 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 zWquot(z, z') -{ 0 }-> 1 + s5 + (1 + activate(z1) + activate(z3)) :|: s5 >= 0, s5 <= 1, z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 zWquot(z, z') -{ 0 }-> 1 + z + z' :|: z' >= 0, z >= 0 Function symbols to be analyzed: {zWquot,activate}, {ZWQUOT,ACTIVATE}, {SEL} Previous analysis results are: from: runtime: O(1) [0], size: O(n^1) [3 + 2*z] minus: runtime: O(1) [0], size: O(1) [0] MINUS: runtime: O(n^1) [z'], size: O(1) [0] quot: runtime: O(1) [0], size: O(1) [1] QUOT: runtime: O(n^1) [1 + z'], size: O(1) [0] ---------------------------------------- (85) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using KoAT for: zWquot after applying outer abstraction to obtain an ITS, resulting in: O(n^2) with polynomial bound: 8 + 14*z + 12*z*z' + 6*z^2 + 14*z' + 6*z'^2 Computed SIZE bound using KoAT for: activate after applying outer abstraction to obtain an ITS, resulting in: O(n^2) with polynomial bound: 12 + 32*z + 24*z^2 ---------------------------------------- (86) Obligation: Complexity RNTS consisting of the following rules: ACTIVATE(z) -{ 1 }-> 1 + ZWQUOT(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MINUS(z, z') -{ z' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ 1 + 2*z' }-> 1 + s10 + s3 :|: s10 >= 0, s10 <= 0, s3 >= 0, s3 <= 0, s >= 0, s <= 0, z - 2 >= 0, z' - 2 >= 0 QUOT(z, z') -{ 1 + 2*z' }-> 1 + s11 + s4 :|: s11 >= 0, s11 <= 0, s4 >= 0, s4 <= 0, z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ 3 }-> 1 + s9 + s2 :|: s9 >= 0, s9 <= 0, s2 >= 0, s2 <= 0, z' = 1 + 0, z - 1 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, z2) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, zWquot(z0'', z1')) + ACTIVATE(1 + z0'' + z1') :|: z1 >= 0, z1' >= 0, z - 1 >= 0, z' = 1 + z1 + (1 + z0'' + z1'), z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, v0 >= 0, z0' = v0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'') + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'' + (1 + (1 + z0''))) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 ZWQUOT(z, z') -{ 2 + z2 }-> 1 + s12 :|: s12 >= 0, s12 <= 0, z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z1) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z3) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 activate(z) -{ 0 }-> z :|: z >= 0 activate(z) -{ 0 }-> zWquot(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 activate(z) -{ 0 }-> 0 :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, z - 1 = v0 activate(z) -{ 0 }-> 1 + z0' :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 activate(z) -{ 0 }-> 1 + z0' + (1 + (1 + z0')) :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 from(z) -{ 0 }-> 0 :|: z >= 0 from(z) -{ 0 }-> 1 + z :|: z >= 0 from(z) -{ 0 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 1 + s6 :|: s6 >= 0, s6 <= 1, z' = 1 + 0, z - 1 >= 0 quot(z, z') -{ 0 }-> 1 + s7 :|: s7 >= 0, s7 <= 1, s' >= 0, s' <= 0, z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 0 }-> 1 + s8 :|: s8 >= 0, s8 <= 1, z' - 1 >= 0, z - 1 >= 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 zWquot(z, z') -{ 0 }-> 1 + s5 + (1 + activate(z1) + activate(z3)) :|: s5 >= 0, s5 <= 1, z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 zWquot(z, z') -{ 0 }-> 1 + z + z' :|: z' >= 0, z >= 0 Function symbols to be analyzed: {zWquot,activate}, {ZWQUOT,ACTIVATE}, {SEL} Previous analysis results are: from: runtime: O(1) [0], size: O(n^1) [3 + 2*z] minus: runtime: O(1) [0], size: O(1) [0] MINUS: runtime: O(n^1) [z'], size: O(1) [0] quot: runtime: O(1) [0], size: O(1) [1] QUOT: runtime: O(n^1) [1 + z'], size: O(1) [0] zWquot: runtime: ?, size: O(n^2) [8 + 14*z + 12*z*z' + 6*z^2 + 14*z' + 6*z'^2] activate: runtime: ?, size: O(n^2) [12 + 32*z + 24*z^2] ---------------------------------------- (87) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: zWquot after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 Computed RUNTIME bound using CoFloCo for: activate after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (88) Obligation: Complexity RNTS consisting of the following rules: ACTIVATE(z) -{ 1 }-> 1 + ZWQUOT(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MINUS(z, z') -{ z' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ 1 + 2*z' }-> 1 + s10 + s3 :|: s10 >= 0, s10 <= 0, s3 >= 0, s3 <= 0, s >= 0, s <= 0, z - 2 >= 0, z' - 2 >= 0 QUOT(z, z') -{ 1 + 2*z' }-> 1 + s11 + s4 :|: s11 >= 0, s11 <= 0, s4 >= 0, s4 <= 0, z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ 3 }-> 1 + s9 + s2 :|: s9 >= 0, s9 <= 0, s2 >= 0, s2 <= 0, z' = 1 + 0, z - 1 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, z2) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, zWquot(z0'', z1')) + ACTIVATE(1 + z0'' + z1') :|: z1 >= 0, z1' >= 0, z - 1 >= 0, z' = 1 + z1 + (1 + z0'' + z1'), z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, v0 >= 0, z0' = v0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'') + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'' + (1 + (1 + z0''))) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 ZWQUOT(z, z') -{ 2 + z2 }-> 1 + s12 :|: s12 >= 0, s12 <= 0, z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z1) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z3) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 activate(z) -{ 0 }-> z :|: z >= 0 activate(z) -{ 0 }-> zWquot(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 activate(z) -{ 0 }-> 0 :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, z - 1 = v0 activate(z) -{ 0 }-> 1 + z0' :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 activate(z) -{ 0 }-> 1 + z0' + (1 + (1 + z0')) :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 from(z) -{ 0 }-> 0 :|: z >= 0 from(z) -{ 0 }-> 1 + z :|: z >= 0 from(z) -{ 0 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 1 + s6 :|: s6 >= 0, s6 <= 1, z' = 1 + 0, z - 1 >= 0 quot(z, z') -{ 0 }-> 1 + s7 :|: s7 >= 0, s7 <= 1, s' >= 0, s' <= 0, z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 0 }-> 1 + s8 :|: s8 >= 0, s8 <= 1, z' - 1 >= 0, z - 1 >= 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 zWquot(z, z') -{ 0 }-> 1 + s5 + (1 + activate(z1) + activate(z3)) :|: s5 >= 0, s5 <= 1, z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 zWquot(z, z') -{ 0 }-> 1 + z + z' :|: z' >= 0, z >= 0 Function symbols to be analyzed: {ZWQUOT,ACTIVATE}, {SEL} Previous analysis results are: from: runtime: O(1) [0], size: O(n^1) [3 + 2*z] minus: runtime: O(1) [0], size: O(1) [0] MINUS: runtime: O(n^1) [z'], size: O(1) [0] quot: runtime: O(1) [0], size: O(1) [1] QUOT: runtime: O(n^1) [1 + z'], size: O(1) [0] zWquot: runtime: O(1) [0], size: O(n^2) [8 + 14*z + 12*z*z' + 6*z^2 + 14*z' + 6*z'^2] activate: runtime: O(1) [0], size: O(n^2) [12 + 32*z + 24*z^2] ---------------------------------------- (89) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (90) Obligation: Complexity RNTS consisting of the following rules: ACTIVATE(z) -{ 1 }-> 1 + ZWQUOT(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MINUS(z, z') -{ z' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ 1 + 2*z' }-> 1 + s10 + s3 :|: s10 >= 0, s10 <= 0, s3 >= 0, s3 <= 0, s >= 0, s <= 0, z - 2 >= 0, z' - 2 >= 0 QUOT(z, z') -{ 1 + 2*z' }-> 1 + s11 + s4 :|: s11 >= 0, s11 <= 0, s4 >= 0, s4 <= 0, z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ 3 }-> 1 + s9 + s2 :|: s9 >= 0, s9 <= 0, s2 >= 0, s2 <= 0, z' = 1 + 0, z - 1 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, s13) + ACTIVATE(1 + z0'' + z1') :|: s13 >= 0, s13 <= 14 * z0'' + 14 * z1' + 6 * (z0'' * z0'') + 12 * (z1' * z0'') + 6 * (z1' * z1') + 8, z1 >= 0, z1' >= 0, z - 1 >= 0, z' = 1 + z1 + (1 + z0'' + z1'), z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, z2) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, v0 >= 0, z0' = v0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'') + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'' + (1 + (1 + z0''))) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 ZWQUOT(z, z') -{ 2 + z2 }-> 1 + s12 :|: s12 >= 0, s12 <= 0, z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z1) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z3) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 activate(z) -{ 0 }-> s14 :|: s14 >= 0, s14 <= 14 * z0 + 14 * z1 + 6 * (z0 * z0) + 12 * (z1 * z0) + 6 * (z1 * z1) + 8, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 activate(z) -{ 0 }-> z :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, z - 1 = v0 activate(z) -{ 0 }-> 1 + z0' :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 activate(z) -{ 0 }-> 1 + z0' + (1 + (1 + z0')) :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 from(z) -{ 0 }-> 0 :|: z >= 0 from(z) -{ 0 }-> 1 + z :|: z >= 0 from(z) -{ 0 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 1 + s6 :|: s6 >= 0, s6 <= 1, z' = 1 + 0, z - 1 >= 0 quot(z, z') -{ 0 }-> 1 + s7 :|: s7 >= 0, s7 <= 1, s' >= 0, s' <= 0, z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 0 }-> 1 + s8 :|: s8 >= 0, s8 <= 1, z' - 1 >= 0, z - 1 >= 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 zWquot(z, z') -{ 0 }-> 1 + s5 + (1 + s15 + s16) :|: s15 >= 0, s15 <= 32 * z1 + 24 * (z1 * z1) + 12, s16 >= 0, s16 <= 32 * z3 + 24 * (z3 * z3) + 12, s5 >= 0, s5 <= 1, z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 zWquot(z, z') -{ 0 }-> 1 + z + z' :|: z' >= 0, z >= 0 Function symbols to be analyzed: {ZWQUOT,ACTIVATE}, {SEL} Previous analysis results are: from: runtime: O(1) [0], size: O(n^1) [3 + 2*z] minus: runtime: O(1) [0], size: O(1) [0] MINUS: runtime: O(n^1) [z'], size: O(1) [0] quot: runtime: O(1) [0], size: O(1) [1] QUOT: runtime: O(n^1) [1 + z'], size: O(1) [0] zWquot: runtime: O(1) [0], size: O(n^2) [8 + 14*z + 12*z*z' + 6*z^2 + 14*z' + 6*z'^2] activate: runtime: O(1) [0], size: O(n^2) [12 + 32*z + 24*z^2] ---------------------------------------- (91) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using KoAT for: ZWQUOT after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 2*z + 2*z' Computed SIZE bound using KoAT for: ACTIVATE after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 2*z ---------------------------------------- (92) Obligation: Complexity RNTS consisting of the following rules: ACTIVATE(z) -{ 1 }-> 1 + ZWQUOT(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MINUS(z, z') -{ z' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ 1 + 2*z' }-> 1 + s10 + s3 :|: s10 >= 0, s10 <= 0, s3 >= 0, s3 <= 0, s >= 0, s <= 0, z - 2 >= 0, z' - 2 >= 0 QUOT(z, z') -{ 1 + 2*z' }-> 1 + s11 + s4 :|: s11 >= 0, s11 <= 0, s4 >= 0, s4 <= 0, z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ 3 }-> 1 + s9 + s2 :|: s9 >= 0, s9 <= 0, s2 >= 0, s2 <= 0, z' = 1 + 0, z - 1 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, s13) + ACTIVATE(1 + z0'' + z1') :|: s13 >= 0, s13 <= 14 * z0'' + 14 * z1' + 6 * (z0'' * z0'') + 12 * (z1' * z0'') + 6 * (z1' * z1') + 8, z1 >= 0, z1' >= 0, z - 1 >= 0, z' = 1 + z1 + (1 + z0'' + z1'), z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, z2) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, v0 >= 0, z0' = v0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'') + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'' + (1 + (1 + z0''))) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 ZWQUOT(z, z') -{ 2 + z2 }-> 1 + s12 :|: s12 >= 0, s12 <= 0, z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z1) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z3) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 activate(z) -{ 0 }-> s14 :|: s14 >= 0, s14 <= 14 * z0 + 14 * z1 + 6 * (z0 * z0) + 12 * (z1 * z0) + 6 * (z1 * z1) + 8, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 activate(z) -{ 0 }-> z :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, z - 1 = v0 activate(z) -{ 0 }-> 1 + z0' :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 activate(z) -{ 0 }-> 1 + z0' + (1 + (1 + z0')) :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 from(z) -{ 0 }-> 0 :|: z >= 0 from(z) -{ 0 }-> 1 + z :|: z >= 0 from(z) -{ 0 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 1 + s6 :|: s6 >= 0, s6 <= 1, z' = 1 + 0, z - 1 >= 0 quot(z, z') -{ 0 }-> 1 + s7 :|: s7 >= 0, s7 <= 1, s' >= 0, s' <= 0, z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 0 }-> 1 + s8 :|: s8 >= 0, s8 <= 1, z' - 1 >= 0, z - 1 >= 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 zWquot(z, z') -{ 0 }-> 1 + s5 + (1 + s15 + s16) :|: s15 >= 0, s15 <= 32 * z1 + 24 * (z1 * z1) + 12, s16 >= 0, s16 <= 32 * z3 + 24 * (z3 * z3) + 12, s5 >= 0, s5 <= 1, z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 zWquot(z, z') -{ 0 }-> 1 + z + z' :|: z' >= 0, z >= 0 Function symbols to be analyzed: {ZWQUOT,ACTIVATE}, {SEL} Previous analysis results are: from: runtime: O(1) [0], size: O(n^1) [3 + 2*z] minus: runtime: O(1) [0], size: O(1) [0] MINUS: runtime: O(n^1) [z'], size: O(1) [0] quot: runtime: O(1) [0], size: O(1) [1] QUOT: runtime: O(n^1) [1 + z'], size: O(1) [0] zWquot: runtime: O(1) [0], size: O(n^2) [8 + 14*z + 12*z*z' + 6*z^2 + 14*z' + 6*z'^2] activate: runtime: O(1) [0], size: O(n^2) [12 + 32*z + 24*z^2] ZWQUOT: runtime: ?, size: O(n^1) [2*z + 2*z'] ACTIVATE: runtime: ?, size: O(n^1) [2*z] ---------------------------------------- (93) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: ZWQUOT after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 5 + 2*z + 2*z' Computed RUNTIME bound using CoFloCo for: ACTIVATE after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 4 + 2*z ---------------------------------------- (94) Obligation: Complexity RNTS consisting of the following rules: ACTIVATE(z) -{ 1 }-> 1 + ZWQUOT(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MINUS(z, z') -{ z' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ 1 + 2*z' }-> 1 + s10 + s3 :|: s10 >= 0, s10 <= 0, s3 >= 0, s3 <= 0, s >= 0, s <= 0, z - 2 >= 0, z' - 2 >= 0 QUOT(z, z') -{ 1 + 2*z' }-> 1 + s11 + s4 :|: s11 >= 0, s11 <= 0, s4 >= 0, s4 <= 0, z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ 3 }-> 1 + s9 + s2 :|: s9 >= 0, s9 <= 0, s2 >= 0, s2 <= 0, z' = 1 + 0, z - 1 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, s13) + ACTIVATE(1 + z0'' + z1') :|: s13 >= 0, s13 <= 14 * z0'' + 14 * z1' + 6 * (z0'' * z0'') + 12 * (z1' * z0'') + 6 * (z1' * z1') + 8, z1 >= 0, z1' >= 0, z - 1 >= 0, z' = 1 + z1 + (1 + z0'' + z1'), z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, z2) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 0) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, v0 >= 0, z0' = v0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'') + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 SEL(z, z') -{ 1 }-> 1 + SEL(z - 1, 1 + z0'' + (1 + (1 + z0''))) + ACTIVATE(1 + z0') :|: z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 ZWQUOT(z, z') -{ 2 + z2 }-> 1 + s12 :|: s12 >= 0, s12 <= 0, z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z1) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z3) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 activate(z) -{ 0 }-> s14 :|: s14 >= 0, s14 <= 14 * z0 + 14 * z1 + 6 * (z0 * z0) + 12 * (z1 * z0) + 6 * (z1 * z1) + 8, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 activate(z) -{ 0 }-> z :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, z - 1 = v0 activate(z) -{ 0 }-> 1 + z0' :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 activate(z) -{ 0 }-> 1 + z0' + (1 + (1 + z0')) :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 from(z) -{ 0 }-> 0 :|: z >= 0 from(z) -{ 0 }-> 1 + z :|: z >= 0 from(z) -{ 0 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 1 + s6 :|: s6 >= 0, s6 <= 1, z' = 1 + 0, z - 1 >= 0 quot(z, z') -{ 0 }-> 1 + s7 :|: s7 >= 0, s7 <= 1, s' >= 0, s' <= 0, z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 0 }-> 1 + s8 :|: s8 >= 0, s8 <= 1, z' - 1 >= 0, z - 1 >= 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 zWquot(z, z') -{ 0 }-> 1 + s5 + (1 + s15 + s16) :|: s15 >= 0, s15 <= 32 * z1 + 24 * (z1 * z1) + 12, s16 >= 0, s16 <= 32 * z3 + 24 * (z3 * z3) + 12, s5 >= 0, s5 <= 1, z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 zWquot(z, z') -{ 0 }-> 1 + z + z' :|: z' >= 0, z >= 0 Function symbols to be analyzed: {SEL} Previous analysis results are: from: runtime: O(1) [0], size: O(n^1) [3 + 2*z] minus: runtime: O(1) [0], size: O(1) [0] MINUS: runtime: O(n^1) [z'], size: O(1) [0] quot: runtime: O(1) [0], size: O(1) [1] QUOT: runtime: O(n^1) [1 + z'], size: O(1) [0] zWquot: runtime: O(1) [0], size: O(n^2) [8 + 14*z + 12*z*z' + 6*z^2 + 14*z' + 6*z'^2] activate: runtime: O(1) [0], size: O(n^2) [12 + 32*z + 24*z^2] ZWQUOT: runtime: O(n^1) [5 + 2*z + 2*z'], size: O(n^1) [2*z + 2*z'] ACTIVATE: runtime: O(n^1) [4 + 2*z], size: O(n^1) [2*z] ---------------------------------------- (95) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (96) Obligation: Complexity RNTS consisting of the following rules: ACTIVATE(z) -{ 6 + 2*z0 + 2*z1 }-> 1 + s22 :|: s22 >= 0, s22 <= 2 * z0 + 2 * z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MINUS(z, z') -{ z' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ 1 + 2*z' }-> 1 + s10 + s3 :|: s10 >= 0, s10 <= 0, s3 >= 0, s3 <= 0, s >= 0, s <= 0, z - 2 >= 0, z' - 2 >= 0 QUOT(z, z') -{ 1 + 2*z' }-> 1 + s11 + s4 :|: s11 >= 0, s11 <= 0, s4 >= 0, s4 <= 0, z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ 3 }-> 1 + s9 + s2 :|: s9 >= 0, s9 <= 0, s2 >= 0, s2 <= 0, z' = 1 + 0, z - 1 >= 0 SEL(z, z') -{ 7 + 2*z0'' + 2*z1' }-> 1 + SEL(z - 1, s13) + s17 :|: s17 >= 0, s17 <= 2 * (1 + z0'' + z1'), s13 >= 0, s13 <= 14 * z0'' + 14 * z1' + 6 * (z0'' * z0'') + 12 * (z1' * z0'') + 6 * (z1' * z1') + 8, z1 >= 0, z1' >= 0, z - 1 >= 0, z' = 1 + z1 + (1 + z0'' + z1'), z0'' >= 0 SEL(z, z') -{ 5 + 2*z2 }-> 1 + SEL(z - 1, z2) + s18 :|: s18 >= 0, s18 <= 2 * z2, z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 5 + 2*z2 }-> 1 + SEL(z - 1, 0) + s19 :|: s19 >= 0, s19 <= 2 * z2, z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 7 + 2*z0' }-> 1 + SEL(z - 1, 0) + s23 :|: s23 >= 0, s23 <= 2 * (1 + z0'), z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, v0 >= 0, z0' = v0 SEL(z, z') -{ 7 + 2*z0' }-> 1 + SEL(z - 1, 1 + z0'') + s24 :|: s24 >= 0, s24 <= 2 * (1 + z0'), z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 SEL(z, z') -{ 7 + 2*z0' }-> 1 + SEL(z - 1, 1 + z0'' + (1 + (1 + z0''))) + s25 :|: s25 >= 0, s25 <= 2 * (1 + z0'), z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 ZWQUOT(z, z') -{ 2 + z2 }-> 1 + s12 :|: s12 >= 0, s12 <= 0, z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 5 + 2*z1 }-> 1 + s20 :|: s20 >= 0, s20 <= 2 * z1, z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 5 + 2*z3 }-> 1 + s21 :|: s21 >= 0, s21 <= 2 * z3, z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 activate(z) -{ 0 }-> s14 :|: s14 >= 0, s14 <= 14 * z0 + 14 * z1 + 6 * (z0 * z0) + 12 * (z1 * z0) + 6 * (z1 * z1) + 8, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 activate(z) -{ 0 }-> z :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, z - 1 = v0 activate(z) -{ 0 }-> 1 + z0' :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 activate(z) -{ 0 }-> 1 + z0' + (1 + (1 + z0')) :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 from(z) -{ 0 }-> 0 :|: z >= 0 from(z) -{ 0 }-> 1 + z :|: z >= 0 from(z) -{ 0 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 1 + s6 :|: s6 >= 0, s6 <= 1, z' = 1 + 0, z - 1 >= 0 quot(z, z') -{ 0 }-> 1 + s7 :|: s7 >= 0, s7 <= 1, s' >= 0, s' <= 0, z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 0 }-> 1 + s8 :|: s8 >= 0, s8 <= 1, z' - 1 >= 0, z - 1 >= 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 zWquot(z, z') -{ 0 }-> 1 + s5 + (1 + s15 + s16) :|: s15 >= 0, s15 <= 32 * z1 + 24 * (z1 * z1) + 12, s16 >= 0, s16 <= 32 * z3 + 24 * (z3 * z3) + 12, s5 >= 0, s5 <= 1, z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 zWquot(z, z') -{ 0 }-> 1 + z + z' :|: z' >= 0, z >= 0 Function symbols to be analyzed: {SEL} Previous analysis results are: from: runtime: O(1) [0], size: O(n^1) [3 + 2*z] minus: runtime: O(1) [0], size: O(1) [0] MINUS: runtime: O(n^1) [z'], size: O(1) [0] quot: runtime: O(1) [0], size: O(1) [1] QUOT: runtime: O(n^1) [1 + z'], size: O(1) [0] zWquot: runtime: O(1) [0], size: O(n^2) [8 + 14*z + 12*z*z' + 6*z^2 + 14*z' + 6*z'^2] activate: runtime: O(1) [0], size: O(n^2) [12 + 32*z + 24*z^2] ZWQUOT: runtime: O(n^1) [5 + 2*z + 2*z'], size: O(n^1) [2*z + 2*z'] ACTIVATE: runtime: O(n^1) [4 + 2*z], size: O(n^1) [2*z] ---------------------------------------- (97) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: SEL after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (98) Obligation: Complexity RNTS consisting of the following rules: ACTIVATE(z) -{ 6 + 2*z0 + 2*z1 }-> 1 + s22 :|: s22 >= 0, s22 <= 2 * z0 + 2 * z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MINUS(z, z') -{ z' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ 1 + 2*z' }-> 1 + s10 + s3 :|: s10 >= 0, s10 <= 0, s3 >= 0, s3 <= 0, s >= 0, s <= 0, z - 2 >= 0, z' - 2 >= 0 QUOT(z, z') -{ 1 + 2*z' }-> 1 + s11 + s4 :|: s11 >= 0, s11 <= 0, s4 >= 0, s4 <= 0, z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ 3 }-> 1 + s9 + s2 :|: s9 >= 0, s9 <= 0, s2 >= 0, s2 <= 0, z' = 1 + 0, z - 1 >= 0 SEL(z, z') -{ 7 + 2*z0'' + 2*z1' }-> 1 + SEL(z - 1, s13) + s17 :|: s17 >= 0, s17 <= 2 * (1 + z0'' + z1'), s13 >= 0, s13 <= 14 * z0'' + 14 * z1' + 6 * (z0'' * z0'') + 12 * (z1' * z0'') + 6 * (z1' * z1') + 8, z1 >= 0, z1' >= 0, z - 1 >= 0, z' = 1 + z1 + (1 + z0'' + z1'), z0'' >= 0 SEL(z, z') -{ 5 + 2*z2 }-> 1 + SEL(z - 1, z2) + s18 :|: s18 >= 0, s18 <= 2 * z2, z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 5 + 2*z2 }-> 1 + SEL(z - 1, 0) + s19 :|: s19 >= 0, s19 <= 2 * z2, z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 7 + 2*z0' }-> 1 + SEL(z - 1, 0) + s23 :|: s23 >= 0, s23 <= 2 * (1 + z0'), z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, v0 >= 0, z0' = v0 SEL(z, z') -{ 7 + 2*z0' }-> 1 + SEL(z - 1, 1 + z0'') + s24 :|: s24 >= 0, s24 <= 2 * (1 + z0'), z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 SEL(z, z') -{ 7 + 2*z0' }-> 1 + SEL(z - 1, 1 + z0'' + (1 + (1 + z0''))) + s25 :|: s25 >= 0, s25 <= 2 * (1 + z0'), z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 ZWQUOT(z, z') -{ 2 + z2 }-> 1 + s12 :|: s12 >= 0, s12 <= 0, z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 5 + 2*z1 }-> 1 + s20 :|: s20 >= 0, s20 <= 2 * z1, z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 5 + 2*z3 }-> 1 + s21 :|: s21 >= 0, s21 <= 2 * z3, z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 activate(z) -{ 0 }-> s14 :|: s14 >= 0, s14 <= 14 * z0 + 14 * z1 + 6 * (z0 * z0) + 12 * (z1 * z0) + 6 * (z1 * z1) + 8, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 activate(z) -{ 0 }-> z :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, z - 1 = v0 activate(z) -{ 0 }-> 1 + z0' :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 activate(z) -{ 0 }-> 1 + z0' + (1 + (1 + z0')) :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 from(z) -{ 0 }-> 0 :|: z >= 0 from(z) -{ 0 }-> 1 + z :|: z >= 0 from(z) -{ 0 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 1 + s6 :|: s6 >= 0, s6 <= 1, z' = 1 + 0, z - 1 >= 0 quot(z, z') -{ 0 }-> 1 + s7 :|: s7 >= 0, s7 <= 1, s' >= 0, s' <= 0, z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 0 }-> 1 + s8 :|: s8 >= 0, s8 <= 1, z' - 1 >= 0, z - 1 >= 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 zWquot(z, z') -{ 0 }-> 1 + s5 + (1 + s15 + s16) :|: s15 >= 0, s15 <= 32 * z1 + 24 * (z1 * z1) + 12, s16 >= 0, s16 <= 32 * z3 + 24 * (z3 * z3) + 12, s5 >= 0, s5 <= 1, z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 zWquot(z, z') -{ 0 }-> 1 + z + z' :|: z' >= 0, z >= 0 Function symbols to be analyzed: {SEL} Previous analysis results are: from: runtime: O(1) [0], size: O(n^1) [3 + 2*z] minus: runtime: O(1) [0], size: O(1) [0] MINUS: runtime: O(n^1) [z'], size: O(1) [0] quot: runtime: O(1) [0], size: O(1) [1] QUOT: runtime: O(n^1) [1 + z'], size: O(1) [0] zWquot: runtime: O(1) [0], size: O(n^2) [8 + 14*z + 12*z*z' + 6*z^2 + 14*z' + 6*z'^2] activate: runtime: O(1) [0], size: O(n^2) [12 + 32*z + 24*z^2] ZWQUOT: runtime: O(n^1) [5 + 2*z + 2*z'], size: O(n^1) [2*z + 2*z'] ACTIVATE: runtime: O(n^1) [4 + 2*z], size: O(n^1) [2*z] SEL: runtime: ?, size: O(1) [0] ---------------------------------------- (99) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: SEL after applying outer abstraction to obtain an ITS, resulting in: INF with polynomial bound: ? ---------------------------------------- (100) Obligation: Complexity RNTS consisting of the following rules: ACTIVATE(z) -{ 6 + 2*z0 + 2*z1 }-> 1 + s22 :|: s22 >= 0, s22 <= 2 * z0 + 2 * z1, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MINUS(z, z') -{ z' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ 1 + 2*z' }-> 1 + s10 + s3 :|: s10 >= 0, s10 <= 0, s3 >= 0, s3 <= 0, s >= 0, s <= 0, z - 2 >= 0, z' - 2 >= 0 QUOT(z, z') -{ 1 + 2*z' }-> 1 + s11 + s4 :|: s11 >= 0, s11 <= 0, s4 >= 0, s4 <= 0, z' - 1 >= 0, z - 1 >= 0 QUOT(z, z') -{ 3 }-> 1 + s9 + s2 :|: s9 >= 0, s9 <= 0, s2 >= 0, s2 <= 0, z' = 1 + 0, z - 1 >= 0 SEL(z, z') -{ 7 + 2*z0'' + 2*z1' }-> 1 + SEL(z - 1, s13) + s17 :|: s17 >= 0, s17 <= 2 * (1 + z0'' + z1'), s13 >= 0, s13 <= 14 * z0'' + 14 * z1' + 6 * (z0'' * z0'') + 12 * (z1' * z0'') + 6 * (z1' * z1') + 8, z1 >= 0, z1' >= 0, z - 1 >= 0, z' = 1 + z1 + (1 + z0'' + z1'), z0'' >= 0 SEL(z, z') -{ 5 + 2*z2 }-> 1 + SEL(z - 1, z2) + s18 :|: s18 >= 0, s18 <= 2 * z2, z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 5 + 2*z2 }-> 1 + SEL(z - 1, 0) + s19 :|: s19 >= 0, s19 <= 2 * z2, z1 >= 0, z' = 1 + z1 + z2, z - 1 >= 0, z2 >= 0 SEL(z, z') -{ 7 + 2*z0' }-> 1 + SEL(z - 1, 0) + s23 :|: s23 >= 0, s23 <= 2 * (1 + z0'), z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, v0 >= 0, z0' = v0 SEL(z, z') -{ 7 + 2*z0' }-> 1 + SEL(z - 1, 1 + z0'') + s24 :|: s24 >= 0, s24 <= 2 * (1 + z0'), z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 SEL(z, z') -{ 7 + 2*z0' }-> 1 + SEL(z - 1, 1 + z0'' + (1 + (1 + z0''))) + s25 :|: s25 >= 0, s25 <= 2 * (1 + z0'), z' = 1 + z1 + (1 + z0'), z1 >= 0, z0' >= 0, z - 1 >= 0, z0' = z0'', z0'' >= 0 ZWQUOT(z, z') -{ 2 + z2 }-> 1 + s12 :|: s12 >= 0, s12 <= 0, z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 5 + 2*z1 }-> 1 + s20 :|: s20 >= 0, s20 <= 2 * z1, z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 5 + 2*z3 }-> 1 + s21 :|: s21 >= 0, s21 <= 2 * z3, z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 activate(z) -{ 0 }-> s14 :|: s14 >= 0, s14 <= 14 * z0 + 14 * z1 + 6 * (z0 * z0) + 12 * (z1 * z0) + 6 * (z1 * z1) + 8, z1 >= 0, z0 >= 0, z = 1 + z0 + z1 activate(z) -{ 0 }-> z :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z >= 0 activate(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, z - 1 = v0 activate(z) -{ 0 }-> 1 + z0' :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 activate(z) -{ 0 }-> 1 + z0' + (1 + (1 + z0')) :|: z - 1 >= 0, z - 1 = z0', z0' >= 0 from(z) -{ 0 }-> 0 :|: z >= 0 from(z) -{ 0 }-> 1 + z :|: z >= 0 from(z) -{ 0 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= 0, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 0 }-> 1 + s6 :|: s6 >= 0, s6 <= 1, z' = 1 + 0, z - 1 >= 0 quot(z, z') -{ 0 }-> 1 + s7 :|: s7 >= 0, s7 <= 1, s' >= 0, s' <= 0, z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 0 }-> 1 + s8 :|: s8 >= 0, s8 <= 1, z' - 1 >= 0, z - 1 >= 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 zWquot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 zWquot(z, z') -{ 0 }-> 1 + s5 + (1 + s15 + s16) :|: s15 >= 0, s15 <= 32 * z1 + 24 * (z1 * z1) + 12, s16 >= 0, s16 <= 32 * z3 + 24 * (z3 * z3) + 12, s5 >= 0, s5 <= 1, z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 zWquot(z, z') -{ 0 }-> 1 + z + z' :|: z' >= 0, z >= 0 Function symbols to be analyzed: {SEL} Previous analysis results are: from: runtime: O(1) [0], size: O(n^1) [3 + 2*z] minus: runtime: O(1) [0], size: O(1) [0] MINUS: runtime: O(n^1) [z'], size: O(1) [0] quot: runtime: O(1) [0], size: O(1) [1] QUOT: runtime: O(n^1) [1 + z'], size: O(1) [0] zWquot: runtime: O(1) [0], size: O(n^2) [8 + 14*z + 12*z*z' + 6*z^2 + 14*z' + 6*z'^2] activate: runtime: O(1) [0], size: O(n^2) [12 + 32*z + 24*z^2] ZWQUOT: runtime: O(n^1) [5 + 2*z + 2*z'], size: O(n^1) [2*z + 2*z'] ACTIVATE: runtime: O(n^1) [4 + 2*z], size: O(n^1) [2*z] SEL: runtime: INF, size: O(1) [0] ---------------------------------------- (101) 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: activate(v0) -> null_activate [0] from(v0) -> null_from [0] zWquot(v0, v1) -> null_zWquot [0] quot(v0, v1) -> null_quot [0] minus(v0, v1) -> null_minus [0] SEL(v0, v1) -> null_SEL [0] MINUS(v0, v1) -> null_MINUS [0] QUOT(v0, v1) -> null_QUOT [0] ZWQUOT(v0, v1) -> null_ZWQUOT [0] ACTIVATE(v0) -> null_ACTIVATE [0] And the following fresh constants: null_activate, null_from, null_zWquot, null_quot, null_minus, null_SEL, null_MINUS, null_QUOT, null_ZWQUOT, null_ACTIVATE ---------------------------------------- (102) 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: SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) [1] MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) [1] QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) [1] ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) [1] ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) [1] ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) [1] ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) [1] activate(n__from(z0)) -> from(z0) [0] activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) [0] activate(z0) -> z0 [0] from(z0) -> cons(z0, n__from(s(z0))) [0] from(z0) -> n__from(z0) [0] zWquot(z0, nil) -> nil [0] zWquot(nil, z0) -> nil [0] zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) [0] zWquot(z0, z1) -> n__zWquot(z0, z1) [0] quot(0, s(z0)) -> 0 [0] quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) [0] minus(z0, 0) -> 0 [0] minus(s(z0), s(z1)) -> minus(z0, z1) [0] activate(v0) -> null_activate [0] from(v0) -> null_from [0] zWquot(v0, v1) -> null_zWquot [0] quot(v0, v1) -> null_quot [0] minus(v0, v1) -> null_minus [0] SEL(v0, v1) -> null_SEL [0] MINUS(v0, v1) -> null_MINUS [0] QUOT(v0, v1) -> null_QUOT [0] ZWQUOT(v0, v1) -> null_ZWQUOT [0] ACTIVATE(v0) -> null_ACTIVATE [0] The TRS has the following type information: SEL :: s:0:null_quot:null_minus -> cons:n__zWquot:n__from:nil:null_activate:null_from:null_zWquot -> c3:null_SEL s :: s:0:null_quot:null_minus -> s:0:null_quot:null_minus cons :: s:0:null_quot:null_minus -> cons:n__zWquot:n__from:nil:null_activate:null_from:null_zWquot -> cons:n__zWquot:n__from:nil:null_activate:null_from:null_zWquot c3 :: c3:null_SEL -> c15:null_ACTIVATE -> c3:null_SEL activate :: cons:n__zWquot:n__from:nil:null_activate:null_from:null_zWquot -> cons:n__zWquot:n__from:nil:null_activate:null_from:null_zWquot ACTIVATE :: cons:n__zWquot:n__from:nil:null_activate:null_from:null_zWquot -> c15:null_ACTIVATE MINUS :: s:0:null_quot:null_minus -> s:0:null_quot:null_minus -> c5:null_MINUS c5 :: c5:null_MINUS -> c5:null_MINUS QUOT :: s:0:null_quot:null_minus -> s:0:null_quot:null_minus -> c7:null_QUOT c7 :: c7:null_QUOT -> c5:null_MINUS -> c7:null_QUOT minus :: s:0:null_quot:null_minus -> s:0:null_quot:null_minus -> s:0:null_quot:null_minus ZWQUOT :: cons:n__zWquot:n__from:nil:null_activate:null_from:null_zWquot -> cons:n__zWquot:n__from:nil:null_activate:null_from:null_zWquot -> c10:c11:c12:null_ZWQUOT c10 :: c7:null_QUOT -> c10:c11:c12:null_ZWQUOT c11 :: c15:null_ACTIVATE -> c10:c11:c12:null_ZWQUOT c12 :: c15:null_ACTIVATE -> c10:c11:c12:null_ZWQUOT n__zWquot :: cons:n__zWquot:n__from:nil:null_activate:null_from:null_zWquot -> cons:n__zWquot:n__from:nil:null_activate:null_from:null_zWquot -> cons:n__zWquot:n__from:nil:null_activate:null_from:null_zWquot c15 :: c10:c11:c12:null_ZWQUOT -> c15:null_ACTIVATE n__from :: s:0:null_quot:null_minus -> cons:n__zWquot:n__from:nil:null_activate:null_from:null_zWquot from :: s:0:null_quot:null_minus -> cons:n__zWquot:n__from:nil:null_activate:null_from:null_zWquot zWquot :: cons:n__zWquot:n__from:nil:null_activate:null_from:null_zWquot -> cons:n__zWquot:n__from:nil:null_activate:null_from:null_zWquot -> cons:n__zWquot:n__from:nil:null_activate:null_from:null_zWquot nil :: cons:n__zWquot:n__from:nil:null_activate:null_from:null_zWquot quot :: s:0:null_quot:null_minus -> s:0:null_quot:null_minus -> s:0:null_quot:null_minus 0 :: s:0:null_quot:null_minus null_activate :: cons:n__zWquot:n__from:nil:null_activate:null_from:null_zWquot null_from :: cons:n__zWquot:n__from:nil:null_activate:null_from:null_zWquot null_zWquot :: cons:n__zWquot:n__from:nil:null_activate:null_from:null_zWquot null_quot :: s:0:null_quot:null_minus null_minus :: s:0:null_quot:null_minus null_SEL :: c3:null_SEL null_MINUS :: c5:null_MINUS null_QUOT :: c7:null_QUOT null_ZWQUOT :: c10:c11:c12:null_ZWQUOT null_ACTIVATE :: c15:null_ACTIVATE Rewrite Strategy: INNERMOST ---------------------------------------- (103) CpxTypedWeightedTrsToRntsProof (UPPER BOUND(ID)) Transformed the TRS into an over-approximating RNTS by (improved) Size Abstraction. The constant constructors are abstracted as follows: nil => 0 0 => 0 null_activate => 0 null_from => 0 null_zWquot => 0 null_quot => 0 null_minus => 0 null_SEL => 0 null_MINUS => 0 null_QUOT => 0 null_ZWQUOT => 0 null_ACTIVATE => 0 ---------------------------------------- (104) Obligation: Complexity RNTS consisting of the following rules: ACTIVATE(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 ACTIVATE(z) -{ 1 }-> 1 + ZWQUOT(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 MINUS(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 MINUS(z, z') -{ 1 }-> 1 + MINUS(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 QUOT(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 QUOT(z, z') -{ 1 }-> 1 + QUOT(minus(z0, z1), 1 + z1) + MINUS(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 SEL(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 SEL(z, z') -{ 1 }-> 1 + SEL(z0, activate(z2)) + ACTIVATE(z2) :|: z1 >= 0, z' = 1 + z1 + z2, z = 1 + z0, z0 >= 0, z2 >= 0 ZWQUOT(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 ZWQUOT(z, z') -{ 1 }-> 1 + QUOT(z0, z2) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z1) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 ZWQUOT(z, z') -{ 1 }-> 1 + ACTIVATE(z3) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 activate(z) -{ 0 }-> z0 :|: z = z0, z0 >= 0 activate(z) -{ 0 }-> zWquot(z0, z1) :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 activate(z) -{ 0 }-> from(z0) :|: z = 1 + z0, z0 >= 0 activate(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 from(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 from(z) -{ 0 }-> 1 + z0 :|: z = z0, z0 >= 0 from(z) -{ 0 }-> 1 + z0 + (1 + (1 + z0)) :|: z = z0, z0 >= 0 minus(z, z') -{ 0 }-> minus(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 minus(z, z') -{ 0 }-> 0 :|: z = z0, z0 >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 quot(z, z') -{ 0 }-> 0 :|: z0 >= 0, z' = 1 + z0, z = 0 quot(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 quot(z, z') -{ 0 }-> 1 + quot(minus(z0, z1), 1 + z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 zWquot(z, z') -{ 0 }-> 0 :|: z = z0, z0 >= 0, z' = 0 zWquot(z, z') -{ 0 }-> 0 :|: z0 >= 0, z = 0, z' = z0 zWquot(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 zWquot(z, z') -{ 0 }-> 1 + z0 + z1 :|: z = z0, z1 >= 0, z' = z1, z0 >= 0 zWquot(z, z') -{ 0 }-> 1 + quot(z0, z2) + (1 + activate(z1) + activate(z3)) :|: z1 >= 0, z' = 1 + z2 + z3, z0 >= 0, z = 1 + z0 + z1, z2 >= 0, z3 >= 0 Only complete derivations are relevant for the runtime complexity. ---------------------------------------- (105) CdtRuleRemovalProof (UPPER BOUND(ADD(n^1))) Found a reduction pair which oriented the following tuples strictly. Hence they can be removed from S. ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) We considered the (Usable) Rules:none And the Tuples: SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) The order we found is given by the following interpretation: Polynomial interpretation : POL(0) = [1] POL(ACTIVATE(x_1)) = [1] POL(MINUS(x_1, x_2)) = 0 POL(QUOT(x_1, x_2)) = 0 POL(SEL(x_1, x_2)) = x_1 POL(ZWQUOT(x_1, x_2)) = [1] POL(activate(x_1)) = [1] + x_1 POL(c10(x_1)) = x_1 POL(c11(x_1)) = x_1 POL(c12(x_1)) = x_1 POL(c15(x_1)) = x_1 POL(c3(x_1, x_2)) = x_1 + x_2 POL(c5(x_1)) = x_1 POL(c7(x_1, x_2)) = x_1 + x_2 POL(cons(x_1, x_2)) = x_1 POL(from(x_1)) = [1] + x_1 POL(minus(x_1, x_2)) = [1] + x_1 + x_2 POL(n__from(x_1)) = [1] + x_1 POL(n__zWquot(x_1, x_2)) = [1] + x_1 POL(nil) = [1] POL(quot(x_1, x_2)) = [1] + x_1 + x_2 POL(s(x_1)) = [1] + x_1 POL(zWquot(x_1, x_2)) = [1] + x_2 ---------------------------------------- (106) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) S tuples: SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) K tuples: ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, MINUS_2, QUOT_2, ZWQUOT_2, ACTIVATE_1 Compound Symbols: c3_2, c5_1, c7_2, c10_1, c11_1, c12_1, c15_1 ---------------------------------------- (107) CdtRuleRemovalProof (UPPER BOUND(ADD(n^1))) Found a reduction pair which oriented the following tuples strictly. Hence they can be removed from S. SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) We considered the (Usable) Rules:none And the Tuples: SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) The order we found is given by the following interpretation: Polynomial interpretation : POL(0) = [1] POL(ACTIVATE(x_1)) = 0 POL(MINUS(x_1, x_2)) = 0 POL(QUOT(x_1, x_2)) = 0 POL(SEL(x_1, x_2)) = x_1 POL(ZWQUOT(x_1, x_2)) = 0 POL(activate(x_1)) = [1] + x_1 POL(c10(x_1)) = x_1 POL(c11(x_1)) = x_1 POL(c12(x_1)) = x_1 POL(c15(x_1)) = x_1 POL(c3(x_1, x_2)) = x_1 + x_2 POL(c5(x_1)) = x_1 POL(c7(x_1, x_2)) = x_1 + x_2 POL(cons(x_1, x_2)) = x_1 POL(from(x_1)) = [1] + x_1 POL(minus(x_1, x_2)) = [1] + x_1 + x_2 POL(n__from(x_1)) = [1] + x_1 POL(n__zWquot(x_1, x_2)) = [1] + x_1 POL(nil) = [1] POL(quot(x_1, x_2)) = [1] + x_1 + x_2 POL(s(x_1)) = [1] + x_1 POL(zWquot(x_1, x_2)) = [1] + x_2 ---------------------------------------- (108) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) S tuples: MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) K tuples: ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, MINUS_2, QUOT_2, ZWQUOT_2, ACTIVATE_1 Compound Symbols: c3_2, c5_1, c7_2, c10_1, c11_1, c12_1, c15_1 ---------------------------------------- (109) CdtRuleRemovalProof (UPPER BOUND(ADD(n^2))) Found a reduction pair which oriented the following tuples strictly. Hence they can be removed from S. ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) We considered the (Usable) Rules: from(z0) -> cons(z0, n__from(s(z0))) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) from(z0) -> n__from(z0) activate(n__from(z0)) -> from(z0) activate(z0) -> z0 zWquot(z0, z1) -> n__zWquot(z0, z1) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) And the Tuples: SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) The order we found is given by the following interpretation: Polynomial interpretation : POL(0) = 0 POL(ACTIVATE(x_1)) = [2]x_1 POL(MINUS(x_1, x_2)) = 0 POL(QUOT(x_1, x_2)) = 0 POL(SEL(x_1, x_2)) = x_1*x_2 POL(ZWQUOT(x_1, x_2)) = [2]x_1 + [2]x_2 POL(activate(x_1)) = x_1 POL(c10(x_1)) = x_1 POL(c11(x_1)) = x_1 POL(c12(x_1)) = x_1 POL(c15(x_1)) = x_1 POL(c3(x_1, x_2)) = x_1 + x_2 POL(c5(x_1)) = x_1 POL(c7(x_1, x_2)) = x_1 + x_2 POL(cons(x_1, x_2)) = x_2 POL(from(x_1)) = 0 POL(minus(x_1, x_2)) = [1] POL(n__from(x_1)) = 0 POL(n__zWquot(x_1, x_2)) = [2] + x_1 + x_2 POL(nil) = [2] POL(quot(x_1, x_2)) = [2]x_1 + [2]x_1*x_2 + [2]x_1^2 POL(s(x_1)) = [2] + x_1 POL(zWquot(x_1, x_2)) = [2] + x_1 + x_2 ---------------------------------------- (110) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) S tuples: MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) K tuples: ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, MINUS_2, QUOT_2, ZWQUOT_2, ACTIVATE_1 Compound Symbols: c3_2, c5_1, c7_2, c10_1, c11_1, c12_1, c15_1 ---------------------------------------- (111) CdtKnowledgeProof (BOTH BOUNDS(ID, ID)) The following tuples could be moved from S to K by knowledge propagation: ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ---------------------------------------- (112) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) S tuples: MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) K tuples: ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, MINUS_2, QUOT_2, ZWQUOT_2, ACTIVATE_1 Compound Symbols: c3_2, c5_1, c7_2, c10_1, c11_1, c12_1, c15_1 ---------------------------------------- (113) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) by SEL(s(x0), cons(x1, n__from(z0))) -> c3(SEL(x0, from(z0)), ACTIVATE(n__from(z0))) SEL(s(x0), cons(x1, n__zWquot(z0, z1))) -> c3(SEL(x0, zWquot(z0, z1)), ACTIVATE(n__zWquot(z0, z1))) SEL(s(x0), cons(x1, z0)) -> c3(SEL(x0, z0), ACTIVATE(z0)) ---------------------------------------- (114) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) SEL(s(x0), cons(x1, n__from(z0))) -> c3(SEL(x0, from(z0)), ACTIVATE(n__from(z0))) SEL(s(x0), cons(x1, n__zWquot(z0, z1))) -> c3(SEL(x0, zWquot(z0, z1)), ACTIVATE(n__zWquot(z0, z1))) SEL(s(x0), cons(x1, z0)) -> c3(SEL(x0, z0), ACTIVATE(z0)) S tuples: MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) K tuples: ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: MINUS_2, QUOT_2, ZWQUOT_2, ACTIVATE_1, SEL_2 Compound Symbols: c5_1, c7_2, c10_1, c11_1, c12_1, c15_1, c3_2 ---------------------------------------- (115) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (116) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) SEL(s(x0), cons(x1, n__zWquot(z0, z1))) -> c3(SEL(x0, zWquot(z0, z1)), ACTIVATE(n__zWquot(z0, z1))) SEL(s(x0), cons(x1, z0)) -> c3(SEL(x0, z0), ACTIVATE(z0)) SEL(s(x0), cons(x1, n__from(z0))) -> c3(SEL(x0, from(z0))) S tuples: MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) K tuples: ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: MINUS_2, QUOT_2, ZWQUOT_2, ACTIVATE_1, SEL_2 Compound Symbols: c5_1, c7_2, c10_1, c11_1, c12_1, c15_1, c3_2, c3_1 ---------------------------------------- (117) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace QUOT(s(z0), s(z1)) -> c7(QUOT(minus(z0, z1), s(z1)), MINUS(z0, z1)) by QUOT(s(z0), s(0)) -> c7(QUOT(0, s(0)), MINUS(z0, 0)) QUOT(s(s(z0)), s(s(z1))) -> c7(QUOT(minus(z0, z1), s(s(z1))), MINUS(s(z0), s(z1))) ---------------------------------------- (118) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) SEL(s(x0), cons(x1, n__zWquot(z0, z1))) -> c3(SEL(x0, zWquot(z0, z1)), ACTIVATE(n__zWquot(z0, z1))) SEL(s(x0), cons(x1, z0)) -> c3(SEL(x0, z0), ACTIVATE(z0)) SEL(s(x0), cons(x1, n__from(z0))) -> c3(SEL(x0, from(z0))) QUOT(s(z0), s(0)) -> c7(QUOT(0, s(0)), MINUS(z0, 0)) QUOT(s(s(z0)), s(s(z1))) -> c7(QUOT(minus(z0, z1), s(s(z1))), MINUS(s(z0), s(z1))) S tuples: MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(z0), s(0)) -> c7(QUOT(0, s(0)), MINUS(z0, 0)) QUOT(s(s(z0)), s(s(z1))) -> c7(QUOT(minus(z0, z1), s(s(z1))), MINUS(s(z0), s(z1))) K tuples: ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) SEL(s(z0), cons(z1, z2)) -> c3(SEL(z0, activate(z2)), ACTIVATE(z2)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: MINUS_2, ZWQUOT_2, ACTIVATE_1, SEL_2, QUOT_2 Compound Symbols: c5_1, c10_1, c11_1, c12_1, c15_1, c3_2, c3_1, c7_2 ---------------------------------------- (119) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: QUOT(s(z0), s(0)) -> c7(QUOT(0, s(0)), MINUS(z0, 0)) ---------------------------------------- (120) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) SEL(s(x0), cons(x1, n__zWquot(z0, z1))) -> c3(SEL(x0, zWquot(z0, z1)), ACTIVATE(n__zWquot(z0, z1))) SEL(s(x0), cons(x1, z0)) -> c3(SEL(x0, z0), ACTIVATE(z0)) SEL(s(x0), cons(x1, n__from(z0))) -> c3(SEL(x0, from(z0))) QUOT(s(s(z0)), s(s(z1))) -> c7(QUOT(minus(z0, z1), s(s(z1))), MINUS(s(z0), s(z1))) S tuples: MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(s(z0)), s(s(z1))) -> c7(QUOT(minus(z0, z1), s(s(z1))), MINUS(s(z0), s(z1))) K tuples: ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: MINUS_2, ZWQUOT_2, ACTIVATE_1, SEL_2, QUOT_2 Compound Symbols: c5_1, c10_1, c11_1, c12_1, c15_1, c3_2, c3_1, c7_2 ---------------------------------------- (121) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace SEL(s(x0), cons(x1, n__zWquot(z0, z1))) -> c3(SEL(x0, zWquot(z0, z1)), ACTIVATE(n__zWquot(z0, z1))) by SEL(s(x0), cons(x1, n__zWquot(z0, nil))) -> c3(SEL(x0, nil), ACTIVATE(n__zWquot(z0, nil))) SEL(s(x0), cons(x1, n__zWquot(nil, z0))) -> c3(SEL(x0, nil), ACTIVATE(n__zWquot(nil, z0))) SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) SEL(s(x0), cons(x1, n__zWquot(z0, z1))) -> c3(SEL(x0, n__zWquot(z0, z1)), ACTIVATE(n__zWquot(z0, z1))) ---------------------------------------- (122) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) SEL(s(x0), cons(x1, z0)) -> c3(SEL(x0, z0), ACTIVATE(z0)) SEL(s(x0), cons(x1, n__from(z0))) -> c3(SEL(x0, from(z0))) QUOT(s(s(z0)), s(s(z1))) -> c7(QUOT(minus(z0, z1), s(s(z1))), MINUS(s(z0), s(z1))) SEL(s(x0), cons(x1, n__zWquot(z0, nil))) -> c3(SEL(x0, nil), ACTIVATE(n__zWquot(z0, nil))) SEL(s(x0), cons(x1, n__zWquot(nil, z0))) -> c3(SEL(x0, nil), ACTIVATE(n__zWquot(nil, z0))) SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) SEL(s(x0), cons(x1, n__zWquot(z0, z1))) -> c3(SEL(x0, n__zWquot(z0, z1)), ACTIVATE(n__zWquot(z0, z1))) S tuples: MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(s(z0)), s(s(z1))) -> c7(QUOT(minus(z0, z1), s(s(z1))), MINUS(s(z0), s(z1))) K tuples: ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: MINUS_2, ZWQUOT_2, ACTIVATE_1, SEL_2, QUOT_2 Compound Symbols: c5_1, c10_1, c11_1, c12_1, c15_1, c3_2, c3_1, c7_2 ---------------------------------------- (123) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (124) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) SEL(s(x0), cons(x1, z0)) -> c3(SEL(x0, z0), ACTIVATE(z0)) SEL(s(x0), cons(x1, n__from(z0))) -> c3(SEL(x0, from(z0))) QUOT(s(s(z0)), s(s(z1))) -> c7(QUOT(minus(z0, z1), s(s(z1))), MINUS(s(z0), s(z1))) SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) SEL(s(x0), cons(x1, n__zWquot(z0, nil))) -> c3(ACTIVATE(n__zWquot(z0, nil))) SEL(s(x0), cons(x1, n__zWquot(nil, z0))) -> c3(ACTIVATE(n__zWquot(nil, z0))) SEL(s(x0), cons(x1, n__zWquot(z0, z1))) -> c3(ACTIVATE(n__zWquot(z0, z1))) S tuples: MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(s(z0)), s(s(z1))) -> c7(QUOT(minus(z0, z1), s(s(z1))), MINUS(s(z0), s(z1))) K tuples: ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: MINUS_2, ZWQUOT_2, ACTIVATE_1, SEL_2, QUOT_2 Compound Symbols: c5_1, c10_1, c11_1, c12_1, c15_1, c3_2, c3_1, c7_2 ---------------------------------------- (125) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace SEL(s(x0), cons(x1, n__from(z0))) -> c3(SEL(x0, from(z0))) by SEL(s(x0), cons(x1, n__from(z0))) -> c3(SEL(x0, cons(z0, n__from(s(z0))))) SEL(s(x0), cons(x1, n__from(z0))) -> c3(SEL(x0, n__from(z0))) ---------------------------------------- (126) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) SEL(s(x0), cons(x1, z0)) -> c3(SEL(x0, z0), ACTIVATE(z0)) QUOT(s(s(z0)), s(s(z1))) -> c7(QUOT(minus(z0, z1), s(s(z1))), MINUS(s(z0), s(z1))) SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) SEL(s(x0), cons(x1, n__zWquot(z0, nil))) -> c3(ACTIVATE(n__zWquot(z0, nil))) SEL(s(x0), cons(x1, n__zWquot(nil, z0))) -> c3(ACTIVATE(n__zWquot(nil, z0))) SEL(s(x0), cons(x1, n__zWquot(z0, z1))) -> c3(ACTIVATE(n__zWquot(z0, z1))) SEL(s(x0), cons(x1, n__from(z0))) -> c3(SEL(x0, cons(z0, n__from(s(z0))))) SEL(s(x0), cons(x1, n__from(z0))) -> c3(SEL(x0, n__from(z0))) S tuples: MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(s(z0)), s(s(z1))) -> c7(QUOT(minus(z0, z1), s(s(z1))), MINUS(s(z0), s(z1))) K tuples: ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: MINUS_2, ZWQUOT_2, ACTIVATE_1, SEL_2, QUOT_2 Compound Symbols: c5_1, c10_1, c11_1, c12_1, c15_1, c3_2, c7_2, c3_1 ---------------------------------------- (127) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: SEL(s(x0), cons(x1, n__from(z0))) -> c3(SEL(x0, n__from(z0))) ---------------------------------------- (128) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) SEL(s(x0), cons(x1, z0)) -> c3(SEL(x0, z0), ACTIVATE(z0)) QUOT(s(s(z0)), s(s(z1))) -> c7(QUOT(minus(z0, z1), s(s(z1))), MINUS(s(z0), s(z1))) SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) SEL(s(x0), cons(x1, n__zWquot(z0, nil))) -> c3(ACTIVATE(n__zWquot(z0, nil))) SEL(s(x0), cons(x1, n__zWquot(nil, z0))) -> c3(ACTIVATE(n__zWquot(nil, z0))) SEL(s(x0), cons(x1, n__zWquot(z0, z1))) -> c3(ACTIVATE(n__zWquot(z0, z1))) SEL(s(x0), cons(x1, n__from(z0))) -> c3(SEL(x0, cons(z0, n__from(s(z0))))) S tuples: MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(s(z0)), s(s(z1))) -> c7(QUOT(minus(z0, z1), s(s(z1))), MINUS(s(z0), s(z1))) K tuples: ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: MINUS_2, ZWQUOT_2, ACTIVATE_1, SEL_2, QUOT_2 Compound Symbols: c5_1, c10_1, c11_1, c12_1, c15_1, c3_2, c7_2, c3_1 ---------------------------------------- (129) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace QUOT(s(s(z0)), s(s(z1))) -> c7(QUOT(minus(z0, z1), s(s(z1))), MINUS(s(z0), s(z1))) by QUOT(s(s(z0)), s(s(0))) -> c7(QUOT(0, s(s(0))), MINUS(s(z0), s(0))) QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) ---------------------------------------- (130) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) SEL(s(x0), cons(x1, z0)) -> c3(SEL(x0, z0), ACTIVATE(z0)) SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) SEL(s(x0), cons(x1, n__zWquot(z0, nil))) -> c3(ACTIVATE(n__zWquot(z0, nil))) SEL(s(x0), cons(x1, n__zWquot(nil, z0))) -> c3(ACTIVATE(n__zWquot(nil, z0))) SEL(s(x0), cons(x1, n__zWquot(z0, z1))) -> c3(ACTIVATE(n__zWquot(z0, z1))) SEL(s(x0), cons(x1, n__from(z0))) -> c3(SEL(x0, cons(z0, n__from(s(z0))))) QUOT(s(s(z0)), s(s(0))) -> c7(QUOT(0, s(s(0))), MINUS(s(z0), s(0))) QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) S tuples: MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(s(z0)), s(s(0))) -> c7(QUOT(0, s(s(0))), MINUS(s(z0), s(0))) QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) K tuples: ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: MINUS_2, ZWQUOT_2, ACTIVATE_1, SEL_2, QUOT_2 Compound Symbols: c5_1, c10_1, c11_1, c12_1, c15_1, c3_2, c3_1, c7_2, c7_1 ---------------------------------------- (131) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (132) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) SEL(s(x0), cons(x1, z0)) -> c3(SEL(x0, z0), ACTIVATE(z0)) SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) SEL(s(x0), cons(x1, n__zWquot(z0, nil))) -> c3(ACTIVATE(n__zWquot(z0, nil))) SEL(s(x0), cons(x1, n__zWquot(nil, z0))) -> c3(ACTIVATE(n__zWquot(nil, z0))) SEL(s(x0), cons(x1, n__zWquot(z0, z1))) -> c3(ACTIVATE(n__zWquot(z0, z1))) SEL(s(x0), cons(x1, n__from(z0))) -> c3(SEL(x0, cons(z0, n__from(s(z0))))) QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) QUOT(s(s(z0)), s(s(0))) -> c7(MINUS(s(z0), s(0))) S tuples: MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) QUOT(s(s(z0)), s(s(0))) -> c7(MINUS(s(z0), s(0))) K tuples: ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: MINUS_2, ZWQUOT_2, ACTIVATE_1, SEL_2, QUOT_2 Compound Symbols: c5_1, c10_1, c11_1, c12_1, c15_1, c3_2, c3_1, c7_2, c7_1 ---------------------------------------- (133) CdtKnowledgeProof (BOTH BOUNDS(ID, ID)) The following tuples could be moved from S to K by knowledge propagation: QUOT(s(s(z0)), s(s(0))) -> c7(MINUS(s(z0), s(0))) ---------------------------------------- (134) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) SEL(s(x0), cons(x1, z0)) -> c3(SEL(x0, z0), ACTIVATE(z0)) SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) SEL(s(x0), cons(x1, n__zWquot(z0, nil))) -> c3(ACTIVATE(n__zWquot(z0, nil))) SEL(s(x0), cons(x1, n__zWquot(nil, z0))) -> c3(ACTIVATE(n__zWquot(nil, z0))) SEL(s(x0), cons(x1, n__zWquot(z0, z1))) -> c3(ACTIVATE(n__zWquot(z0, z1))) SEL(s(x0), cons(x1, n__from(z0))) -> c3(SEL(x0, cons(z0, n__from(s(z0))))) QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) QUOT(s(s(z0)), s(s(0))) -> c7(MINUS(s(z0), s(0))) S tuples: MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) K tuples: ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) QUOT(s(s(z0)), s(s(0))) -> c7(MINUS(s(z0), s(0))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: MINUS_2, ZWQUOT_2, ACTIVATE_1, SEL_2, QUOT_2 Compound Symbols: c5_1, c10_1, c11_1, c12_1, c15_1, c3_2, c3_1, c7_2, c7_1 ---------------------------------------- (135) CdtRuleRemovalProof (UPPER BOUND(ADD(n^1))) Found a reduction pair which oriented the following tuples strictly. Hence they can be removed from S. QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) We considered the (Usable) Rules:none And the Tuples: MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) SEL(s(x0), cons(x1, z0)) -> c3(SEL(x0, z0), ACTIVATE(z0)) SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) SEL(s(x0), cons(x1, n__zWquot(z0, nil))) -> c3(ACTIVATE(n__zWquot(z0, nil))) SEL(s(x0), cons(x1, n__zWquot(nil, z0))) -> c3(ACTIVATE(n__zWquot(nil, z0))) SEL(s(x0), cons(x1, n__zWquot(z0, z1))) -> c3(ACTIVATE(n__zWquot(z0, z1))) SEL(s(x0), cons(x1, n__from(z0))) -> c3(SEL(x0, cons(z0, n__from(s(z0))))) QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) QUOT(s(s(z0)), s(s(0))) -> c7(MINUS(s(z0), s(0))) The order we found is given by the following interpretation: Polynomial interpretation : POL(0) = [1] POL(ACTIVATE(x_1)) = [1] POL(MINUS(x_1, x_2)) = 0 POL(QUOT(x_1, x_2)) = [1] POL(SEL(x_1, x_2)) = [1] + x_1 POL(ZWQUOT(x_1, x_2)) = [1] POL(activate(x_1)) = [1] + x_1 POL(c10(x_1)) = x_1 POL(c11(x_1)) = x_1 POL(c12(x_1)) = x_1 POL(c15(x_1)) = x_1 POL(c3(x_1)) = x_1 POL(c3(x_1, x_2)) = x_1 + x_2 POL(c5(x_1)) = x_1 POL(c7(x_1)) = x_1 POL(c7(x_1, x_2)) = x_1 + x_2 POL(cons(x_1, x_2)) = 0 POL(from(x_1)) = [1] + x_1 POL(minus(x_1, x_2)) = [1] + x_1 + x_2 POL(n__from(x_1)) = [1] + x_1 POL(n__zWquot(x_1, x_2)) = [1] POL(nil) = [1] POL(quot(x_1, x_2)) = x_2 POL(s(x_1)) = [1] + x_1 POL(zWquot(x_1, x_2)) = [1] + x_1 + x_2 ---------------------------------------- (136) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) SEL(s(x0), cons(x1, z0)) -> c3(SEL(x0, z0), ACTIVATE(z0)) SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) SEL(s(x0), cons(x1, n__zWquot(z0, nil))) -> c3(ACTIVATE(n__zWquot(z0, nil))) SEL(s(x0), cons(x1, n__zWquot(nil, z0))) -> c3(ACTIVATE(n__zWquot(nil, z0))) SEL(s(x0), cons(x1, n__zWquot(z0, z1))) -> c3(ACTIVATE(n__zWquot(z0, z1))) SEL(s(x0), cons(x1, n__from(z0))) -> c3(SEL(x0, cons(z0, n__from(s(z0))))) QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) QUOT(s(s(z0)), s(s(0))) -> c7(MINUS(s(z0), s(0))) S tuples: MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) K tuples: ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) QUOT(s(s(z0)), s(s(0))) -> c7(MINUS(s(z0), s(0))) QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: MINUS_2, ZWQUOT_2, ACTIVATE_1, SEL_2, QUOT_2 Compound Symbols: c5_1, c10_1, c11_1, c12_1, c15_1, c3_2, c3_1, c7_2, c7_1 ---------------------------------------- (137) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace MINUS(s(z0), s(z1)) -> c5(MINUS(z0, z1)) by MINUS(s(s(y0)), s(s(y1))) -> c5(MINUS(s(y0), s(y1))) ---------------------------------------- (138) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) SEL(s(x0), cons(x1, z0)) -> c3(SEL(x0, z0), ACTIVATE(z0)) SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) SEL(s(x0), cons(x1, n__zWquot(z0, nil))) -> c3(ACTIVATE(n__zWquot(z0, nil))) SEL(s(x0), cons(x1, n__zWquot(nil, z0))) -> c3(ACTIVATE(n__zWquot(nil, z0))) SEL(s(x0), cons(x1, n__zWquot(z0, z1))) -> c3(ACTIVATE(n__zWquot(z0, z1))) SEL(s(x0), cons(x1, n__from(z0))) -> c3(SEL(x0, cons(z0, n__from(s(z0))))) QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) QUOT(s(s(z0)), s(s(0))) -> c7(MINUS(s(z0), s(0))) MINUS(s(s(y0)), s(s(y1))) -> c5(MINUS(s(y0), s(y1))) S tuples: QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) MINUS(s(s(y0)), s(s(y1))) -> c5(MINUS(s(y0), s(y1))) K tuples: ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) QUOT(s(s(z0)), s(s(0))) -> c7(MINUS(s(z0), s(0))) QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: ZWQUOT_2, ACTIVATE_1, SEL_2, QUOT_2, MINUS_2 Compound Symbols: c10_1, c11_1, c12_1, c15_1, c3_2, c3_1, c7_2, c7_1, c5_1 ---------------------------------------- (139) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: QUOT(s(s(z0)), s(s(0))) -> c7(MINUS(s(z0), s(0))) ---------------------------------------- (140) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) SEL(s(x0), cons(x1, z0)) -> c3(SEL(x0, z0), ACTIVATE(z0)) SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) SEL(s(x0), cons(x1, n__zWquot(z0, nil))) -> c3(ACTIVATE(n__zWquot(z0, nil))) SEL(s(x0), cons(x1, n__zWquot(nil, z0))) -> c3(ACTIVATE(n__zWquot(nil, z0))) SEL(s(x0), cons(x1, n__zWquot(z0, z1))) -> c3(ACTIVATE(n__zWquot(z0, z1))) SEL(s(x0), cons(x1, n__from(z0))) -> c3(SEL(x0, cons(z0, n__from(s(z0))))) QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) MINUS(s(s(y0)), s(s(y1))) -> c5(MINUS(s(y0), s(y1))) S tuples: QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) MINUS(s(s(y0)), s(s(y1))) -> c5(MINUS(s(y0), s(y1))) K tuples: ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: ZWQUOT_2, ACTIVATE_1, SEL_2, QUOT_2, MINUS_2 Compound Symbols: c10_1, c11_1, c12_1, c15_1, c3_2, c3_1, c7_2, c7_1, c5_1 ---------------------------------------- (141) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c10(QUOT(z0, z2)) by ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(s(s(y0)), z1), cons(s(s(y1)), z3)) -> c10(QUOT(s(s(y0)), s(s(y1)))) ---------------------------------------- (142) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) SEL(s(x0), cons(x1, z0)) -> c3(SEL(x0, z0), ACTIVATE(z0)) SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) SEL(s(x0), cons(x1, n__zWquot(z0, nil))) -> c3(ACTIVATE(n__zWquot(z0, nil))) SEL(s(x0), cons(x1, n__zWquot(nil, z0))) -> c3(ACTIVATE(n__zWquot(nil, z0))) SEL(s(x0), cons(x1, n__zWquot(z0, z1))) -> c3(ACTIVATE(n__zWquot(z0, z1))) SEL(s(x0), cons(x1, n__from(z0))) -> c3(SEL(x0, cons(z0, n__from(s(z0))))) QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) MINUS(s(s(y0)), s(s(y1))) -> c5(MINUS(s(y0), s(y1))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(s(s(y0)), z1), cons(s(s(y1)), z3)) -> c10(QUOT(s(s(y0)), s(s(y1)))) S tuples: QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) MINUS(s(s(y0)), s(s(y1))) -> c5(MINUS(s(y0), s(y1))) K tuples: ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(s(s(y0)), z1), cons(s(s(y1)), z3)) -> c10(QUOT(s(s(y0)), s(s(y1)))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: ZWQUOT_2, ACTIVATE_1, SEL_2, QUOT_2, MINUS_2 Compound Symbols: c11_1, c12_1, c15_1, c3_2, c3_1, c7_2, c7_1, c5_1, c10_1 ---------------------------------------- (143) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c11(ACTIVATE(z1)) by ZWQUOT(cons(z0, n__zWquot(y0, y1)), cons(z2, z3)) -> c11(ACTIVATE(n__zWquot(y0, y1))) ---------------------------------------- (144) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) SEL(s(x0), cons(x1, z0)) -> c3(SEL(x0, z0), ACTIVATE(z0)) SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) SEL(s(x0), cons(x1, n__zWquot(z0, nil))) -> c3(ACTIVATE(n__zWquot(z0, nil))) SEL(s(x0), cons(x1, n__zWquot(nil, z0))) -> c3(ACTIVATE(n__zWquot(nil, z0))) SEL(s(x0), cons(x1, n__zWquot(z0, z1))) -> c3(ACTIVATE(n__zWquot(z0, z1))) SEL(s(x0), cons(x1, n__from(z0))) -> c3(SEL(x0, cons(z0, n__from(s(z0))))) QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) MINUS(s(s(y0)), s(s(y1))) -> c5(MINUS(s(y0), s(y1))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(s(s(y0)), z1), cons(s(s(y1)), z3)) -> c10(QUOT(s(s(y0)), s(s(y1)))) ZWQUOT(cons(z0, n__zWquot(y0, y1)), cons(z2, z3)) -> c11(ACTIVATE(n__zWquot(y0, y1))) S tuples: QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) MINUS(s(s(y0)), s(s(y1))) -> c5(MINUS(s(y0), s(y1))) K tuples: ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(s(s(y0)), z1), cons(s(s(y1)), z3)) -> c10(QUOT(s(s(y0)), s(s(y1)))) ZWQUOT(cons(z0, n__zWquot(y0, y1)), cons(z2, z3)) -> c11(ACTIVATE(n__zWquot(y0, y1))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: ZWQUOT_2, ACTIVATE_1, SEL_2, QUOT_2, MINUS_2 Compound Symbols: c12_1, c15_1, c3_2, c3_1, c7_2, c7_1, c5_1, c10_1, c11_1 ---------------------------------------- (145) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace ZWQUOT(cons(z0, z1), cons(z2, z3)) -> c12(ACTIVATE(z3)) by ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(y0, y1))) -> c12(ACTIVATE(n__zWquot(y0, y1))) ---------------------------------------- (146) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) SEL(s(x0), cons(x1, z0)) -> c3(SEL(x0, z0), ACTIVATE(z0)) SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) SEL(s(x0), cons(x1, n__zWquot(z0, nil))) -> c3(ACTIVATE(n__zWquot(z0, nil))) SEL(s(x0), cons(x1, n__zWquot(nil, z0))) -> c3(ACTIVATE(n__zWquot(nil, z0))) SEL(s(x0), cons(x1, n__zWquot(z0, z1))) -> c3(ACTIVATE(n__zWquot(z0, z1))) SEL(s(x0), cons(x1, n__from(z0))) -> c3(SEL(x0, cons(z0, n__from(s(z0))))) QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) MINUS(s(s(y0)), s(s(y1))) -> c5(MINUS(s(y0), s(y1))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(s(s(y0)), z1), cons(s(s(y1)), z3)) -> c10(QUOT(s(s(y0)), s(s(y1)))) ZWQUOT(cons(z0, n__zWquot(y0, y1)), cons(z2, z3)) -> c11(ACTIVATE(n__zWquot(y0, y1))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(y0, y1))) -> c12(ACTIVATE(n__zWquot(y0, y1))) S tuples: QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) MINUS(s(s(y0)), s(s(y1))) -> c5(MINUS(s(y0), s(y1))) K tuples: ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(s(s(y0)), z1), cons(s(s(y1)), z3)) -> c10(QUOT(s(s(y0)), s(s(y1)))) ZWQUOT(cons(z0, n__zWquot(y0, y1)), cons(z2, z3)) -> c11(ACTIVATE(n__zWquot(y0, y1))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(y0, y1))) -> c12(ACTIVATE(n__zWquot(y0, y1))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: ACTIVATE_1, SEL_2, QUOT_2, MINUS_2, ZWQUOT_2 Compound Symbols: c15_1, c3_2, c3_1, c7_2, c7_1, c5_1, c10_1, c11_1, c12_1 ---------------------------------------- (147) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace ACTIVATE(n__zWquot(z0, z1)) -> c15(ZWQUOT(z0, z1)) by ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) -> c15(ZWQUOT(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) -> c15(ZWQUOT(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) ---------------------------------------- (148) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(x0), cons(x1, z0)) -> c3(SEL(x0, z0), ACTIVATE(z0)) SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) SEL(s(x0), cons(x1, n__zWquot(z0, nil))) -> c3(ACTIVATE(n__zWquot(z0, nil))) SEL(s(x0), cons(x1, n__zWquot(nil, z0))) -> c3(ACTIVATE(n__zWquot(nil, z0))) SEL(s(x0), cons(x1, n__zWquot(z0, z1))) -> c3(ACTIVATE(n__zWquot(z0, z1))) SEL(s(x0), cons(x1, n__from(z0))) -> c3(SEL(x0, cons(z0, n__from(s(z0))))) QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) MINUS(s(s(y0)), s(s(y1))) -> c5(MINUS(s(y0), s(y1))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(s(s(y0)), z1), cons(s(s(y1)), z3)) -> c10(QUOT(s(s(y0)), s(s(y1)))) ZWQUOT(cons(z0, n__zWquot(y0, y1)), cons(z2, z3)) -> c11(ACTIVATE(n__zWquot(y0, y1))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(y0, y1))) -> c12(ACTIVATE(n__zWquot(y0, y1))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) -> c15(ZWQUOT(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) -> c15(ZWQUOT(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) S tuples: QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) MINUS(s(s(y0)), s(s(y1))) -> c5(MINUS(s(y0), s(y1))) K tuples: QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(s(s(y0)), z1), cons(s(s(y1)), z3)) -> c10(QUOT(s(s(y0)), s(s(y1)))) ZWQUOT(cons(z0, n__zWquot(y0, y1)), cons(z2, z3)) -> c11(ACTIVATE(n__zWquot(y0, y1))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(y0, y1))) -> c12(ACTIVATE(n__zWquot(y0, y1))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) -> c15(ZWQUOT(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) -> c15(ZWQUOT(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, QUOT_2, MINUS_2, ZWQUOT_2, ACTIVATE_1 Compound Symbols: c3_2, c3_1, c7_2, c7_1, c5_1, c10_1, c11_1, c12_1, c15_1 ---------------------------------------- (149) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: SEL(s(x0), cons(x1, n__zWquot(z0, nil))) -> c3(ACTIVATE(n__zWquot(z0, nil))) SEL(s(x0), cons(x1, n__zWquot(nil, z0))) -> c3(ACTIVATE(n__zWquot(nil, z0))) ---------------------------------------- (150) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(x0), cons(x1, z0)) -> c3(SEL(x0, z0), ACTIVATE(z0)) SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) SEL(s(x0), cons(x1, n__zWquot(z0, z1))) -> c3(ACTIVATE(n__zWquot(z0, z1))) SEL(s(x0), cons(x1, n__from(z0))) -> c3(SEL(x0, cons(z0, n__from(s(z0))))) QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) MINUS(s(s(y0)), s(s(y1))) -> c5(MINUS(s(y0), s(y1))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(s(s(y0)), z1), cons(s(s(y1)), z3)) -> c10(QUOT(s(s(y0)), s(s(y1)))) ZWQUOT(cons(z0, n__zWquot(y0, y1)), cons(z2, z3)) -> c11(ACTIVATE(n__zWquot(y0, y1))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(y0, y1))) -> c12(ACTIVATE(n__zWquot(y0, y1))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) -> c15(ZWQUOT(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) -> c15(ZWQUOT(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) S tuples: QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) MINUS(s(s(y0)), s(s(y1))) -> c5(MINUS(s(y0), s(y1))) K tuples: QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(s(s(y0)), z1), cons(s(s(y1)), z3)) -> c10(QUOT(s(s(y0)), s(s(y1)))) ZWQUOT(cons(z0, n__zWquot(y0, y1)), cons(z2, z3)) -> c11(ACTIVATE(n__zWquot(y0, y1))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(y0, y1))) -> c12(ACTIVATE(n__zWquot(y0, y1))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) -> c15(ZWQUOT(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) -> c15(ZWQUOT(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, QUOT_2, MINUS_2, ZWQUOT_2, ACTIVATE_1 Compound Symbols: c3_2, c3_1, c7_2, c7_1, c5_1, c10_1, c11_1, c12_1, c15_1 ---------------------------------------- (151) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace SEL(s(x0), cons(x1, z0)) -> c3(SEL(x0, z0), ACTIVATE(z0)) by SEL(s(s(y0)), cons(z1, cons(y1, y2))) -> c3(SEL(s(y0), cons(y1, y2)), ACTIVATE(cons(y1, y2))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) -> c3(SEL(s(y0), cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5)))), ACTIVATE(cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(y2, y3)))) -> c3(SEL(s(y0), cons(y1, n__zWquot(y2, y3))), ACTIVATE(cons(y1, n__zWquot(y2, y3)))) SEL(s(s(y0)), cons(z1, cons(y1, n__from(y2)))) -> c3(SEL(s(y0), cons(y1, n__from(y2))), ACTIVATE(cons(y1, n__from(y2)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c3(SEL(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c3(SEL(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c3(SEL(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c3(SEL(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ---------------------------------------- (152) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) SEL(s(x0), cons(x1, n__zWquot(z0, z1))) -> c3(ACTIVATE(n__zWquot(z0, z1))) SEL(s(x0), cons(x1, n__from(z0))) -> c3(SEL(x0, cons(z0, n__from(s(z0))))) QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) MINUS(s(s(y0)), s(s(y1))) -> c5(MINUS(s(y0), s(y1))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(s(s(y0)), z1), cons(s(s(y1)), z3)) -> c10(QUOT(s(s(y0)), s(s(y1)))) ZWQUOT(cons(z0, n__zWquot(y0, y1)), cons(z2, z3)) -> c11(ACTIVATE(n__zWquot(y0, y1))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(y0, y1))) -> c12(ACTIVATE(n__zWquot(y0, y1))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) -> c15(ZWQUOT(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) -> c15(ZWQUOT(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) SEL(s(s(y0)), cons(z1, cons(y1, y2))) -> c3(SEL(s(y0), cons(y1, y2)), ACTIVATE(cons(y1, y2))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) -> c3(SEL(s(y0), cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5)))), ACTIVATE(cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(y2, y3)))) -> c3(SEL(s(y0), cons(y1, n__zWquot(y2, y3))), ACTIVATE(cons(y1, n__zWquot(y2, y3)))) SEL(s(s(y0)), cons(z1, cons(y1, n__from(y2)))) -> c3(SEL(s(y0), cons(y1, n__from(y2))), ACTIVATE(cons(y1, n__from(y2)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c3(SEL(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c3(SEL(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c3(SEL(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c3(SEL(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) S tuples: QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) MINUS(s(s(y0)), s(s(y1))) -> c5(MINUS(s(y0), s(y1))) K tuples: QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(s(s(y0)), z1), cons(s(s(y1)), z3)) -> c10(QUOT(s(s(y0)), s(s(y1)))) ZWQUOT(cons(z0, n__zWquot(y0, y1)), cons(z2, z3)) -> c11(ACTIVATE(n__zWquot(y0, y1))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(y0, y1))) -> c12(ACTIVATE(n__zWquot(y0, y1))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) -> c15(ZWQUOT(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) -> c15(ZWQUOT(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, QUOT_2, MINUS_2, ZWQUOT_2, ACTIVATE_1 Compound Symbols: c3_2, c3_1, c7_2, c7_1, c5_1, c10_1, c11_1, c12_1, c15_1 ---------------------------------------- (153) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 8 trailing tuple parts ---------------------------------------- (154) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) SEL(s(x0), cons(x1, n__zWquot(z0, z1))) -> c3(ACTIVATE(n__zWquot(z0, z1))) SEL(s(x0), cons(x1, n__from(z0))) -> c3(SEL(x0, cons(z0, n__from(s(z0))))) QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) MINUS(s(s(y0)), s(s(y1))) -> c5(MINUS(s(y0), s(y1))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(s(s(y0)), z1), cons(s(s(y1)), z3)) -> c10(QUOT(s(s(y0)), s(s(y1)))) ZWQUOT(cons(z0, n__zWquot(y0, y1)), cons(z2, z3)) -> c11(ACTIVATE(n__zWquot(y0, y1))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(y0, y1))) -> c12(ACTIVATE(n__zWquot(y0, y1))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) -> c15(ZWQUOT(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) -> c15(ZWQUOT(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) SEL(s(s(y0)), cons(z1, cons(y1, y2))) -> c3(SEL(s(y0), cons(y1, y2))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) -> c3(SEL(s(y0), cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(y2, y3)))) -> c3(SEL(s(y0), cons(y1, n__zWquot(y2, y3)))) SEL(s(s(y0)), cons(z1, cons(y1, n__from(y2)))) -> c3(SEL(s(y0), cons(y1, n__from(y2)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c3(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) S tuples: QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) MINUS(s(s(y0)), s(s(y1))) -> c5(MINUS(s(y0), s(y1))) K tuples: QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(s(s(y0)), z1), cons(s(s(y1)), z3)) -> c10(QUOT(s(s(y0)), s(s(y1)))) ZWQUOT(cons(z0, n__zWquot(y0, y1)), cons(z2, z3)) -> c11(ACTIVATE(n__zWquot(y0, y1))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(y0, y1))) -> c12(ACTIVATE(n__zWquot(y0, y1))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) -> c15(ZWQUOT(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) -> c15(ZWQUOT(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, QUOT_2, MINUS_2, ZWQUOT_2, ACTIVATE_1 Compound Symbols: c3_2, c3_1, c7_2, c7_1, c5_1, c10_1, c11_1, c12_1, c15_1 ---------------------------------------- (155) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace SEL(s(x0), cons(x1, n__zWquot(z0, z1))) -> c3(ACTIVATE(n__zWquot(z0, z1))) by SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c3(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ---------------------------------------- (156) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) SEL(s(x0), cons(x1, n__from(z0))) -> c3(SEL(x0, cons(z0, n__from(s(z0))))) QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) MINUS(s(s(y0)), s(s(y1))) -> c5(MINUS(s(y0), s(y1))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(s(s(y0)), z1), cons(s(s(y1)), z3)) -> c10(QUOT(s(s(y0)), s(s(y1)))) ZWQUOT(cons(z0, n__zWquot(y0, y1)), cons(z2, z3)) -> c11(ACTIVATE(n__zWquot(y0, y1))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(y0, y1))) -> c12(ACTIVATE(n__zWquot(y0, y1))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) -> c15(ZWQUOT(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) -> c15(ZWQUOT(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) SEL(s(s(y0)), cons(z1, cons(y1, y2))) -> c3(SEL(s(y0), cons(y1, y2))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) -> c3(SEL(s(y0), cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(y2, y3)))) -> c3(SEL(s(y0), cons(y1, n__zWquot(y2, y3)))) SEL(s(s(y0)), cons(z1, cons(y1, n__from(y2)))) -> c3(SEL(s(y0), cons(y1, n__from(y2)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c3(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) S tuples: QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) MINUS(s(s(y0)), s(s(y1))) -> c5(MINUS(s(y0), s(y1))) K tuples: QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(s(s(y0)), z1), cons(s(s(y1)), z3)) -> c10(QUOT(s(s(y0)), s(s(y1)))) ZWQUOT(cons(z0, n__zWquot(y0, y1)), cons(z2, z3)) -> c11(ACTIVATE(n__zWquot(y0, y1))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(y0, y1))) -> c12(ACTIVATE(n__zWquot(y0, y1))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) -> c15(ZWQUOT(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) -> c15(ZWQUOT(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, QUOT_2, MINUS_2, ZWQUOT_2, ACTIVATE_1 Compound Symbols: c3_2, c3_1, c7_2, c7_1, c5_1, c10_1, c11_1, c12_1, c15_1 ---------------------------------------- (157) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace SEL(s(x0), cons(x1, n__from(z0))) -> c3(SEL(x0, cons(z0, n__from(s(z0))))) by SEL(s(s(y0)), cons(z1, n__from(z2))) -> c3(SEL(s(y0), cons(z2, n__from(s(z2))))) ---------------------------------------- (158) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) MINUS(s(s(y0)), s(s(y1))) -> c5(MINUS(s(y0), s(y1))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(s(s(y0)), z1), cons(s(s(y1)), z3)) -> c10(QUOT(s(s(y0)), s(s(y1)))) ZWQUOT(cons(z0, n__zWquot(y0, y1)), cons(z2, z3)) -> c11(ACTIVATE(n__zWquot(y0, y1))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(y0, y1))) -> c12(ACTIVATE(n__zWquot(y0, y1))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) -> c15(ZWQUOT(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) -> c15(ZWQUOT(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) SEL(s(s(y0)), cons(z1, cons(y1, y2))) -> c3(SEL(s(y0), cons(y1, y2))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) -> c3(SEL(s(y0), cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(y2, y3)))) -> c3(SEL(s(y0), cons(y1, n__zWquot(y2, y3)))) SEL(s(s(y0)), cons(z1, cons(y1, n__from(y2)))) -> c3(SEL(s(y0), cons(y1, n__from(y2)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c3(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) SEL(s(s(y0)), cons(z1, n__from(z2))) -> c3(SEL(s(y0), cons(z2, n__from(s(z2))))) S tuples: QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) MINUS(s(s(y0)), s(s(y1))) -> c5(MINUS(s(y0), s(y1))) K tuples: QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(s(s(y0)), z1), cons(s(s(y1)), z3)) -> c10(QUOT(s(s(y0)), s(s(y1)))) ZWQUOT(cons(z0, n__zWquot(y0, y1)), cons(z2, z3)) -> c11(ACTIVATE(n__zWquot(y0, y1))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(y0, y1))) -> c12(ACTIVATE(n__zWquot(y0, y1))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) -> c15(ZWQUOT(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) -> c15(ZWQUOT(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, QUOT_2, MINUS_2, ZWQUOT_2, ACTIVATE_1 Compound Symbols: c3_2, c7_2, c7_1, c5_1, c10_1, c11_1, c12_1, c15_1, c3_1 ---------------------------------------- (159) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace QUOT(s(s(x0)), s(s(x1))) -> c7(MINUS(s(x0), s(x1))) by QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) ---------------------------------------- (160) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) MINUS(s(s(y0)), s(s(y1))) -> c5(MINUS(s(y0), s(y1))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(s(s(y0)), z1), cons(s(s(y1)), z3)) -> c10(QUOT(s(s(y0)), s(s(y1)))) ZWQUOT(cons(z0, n__zWquot(y0, y1)), cons(z2, z3)) -> c11(ACTIVATE(n__zWquot(y0, y1))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(y0, y1))) -> c12(ACTIVATE(n__zWquot(y0, y1))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) -> c15(ZWQUOT(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) -> c15(ZWQUOT(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) SEL(s(s(y0)), cons(z1, cons(y1, y2))) -> c3(SEL(s(y0), cons(y1, y2))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) -> c3(SEL(s(y0), cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(y2, y3)))) -> c3(SEL(s(y0), cons(y1, n__zWquot(y2, y3)))) SEL(s(s(y0)), cons(z1, cons(y1, n__from(y2)))) -> c3(SEL(s(y0), cons(y1, n__from(y2)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c3(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) SEL(s(s(y0)), cons(z1, n__from(z2))) -> c3(SEL(s(y0), cons(z2, n__from(s(z2))))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) S tuples: QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) MINUS(s(s(y0)), s(s(y1))) -> c5(MINUS(s(y0), s(y1))) K tuples: ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(s(s(y0)), z1), cons(s(s(y1)), z3)) -> c10(QUOT(s(s(y0)), s(s(y1)))) ZWQUOT(cons(z0, n__zWquot(y0, y1)), cons(z2, z3)) -> c11(ACTIVATE(n__zWquot(y0, y1))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(y0, y1))) -> c12(ACTIVATE(n__zWquot(y0, y1))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) -> c15(ZWQUOT(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) -> c15(ZWQUOT(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, QUOT_2, MINUS_2, ZWQUOT_2, ACTIVATE_1 Compound Symbols: c3_2, c7_2, c5_1, c10_1, c11_1, c12_1, c15_1, c3_1, c7_1 ---------------------------------------- (161) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace MINUS(s(s(y0)), s(s(y1))) -> c5(MINUS(s(y0), s(y1))) by MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) ---------------------------------------- (162) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(s(s(y0)), z1), cons(s(s(y1)), z3)) -> c10(QUOT(s(s(y0)), s(s(y1)))) ZWQUOT(cons(z0, n__zWquot(y0, y1)), cons(z2, z3)) -> c11(ACTIVATE(n__zWquot(y0, y1))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(y0, y1))) -> c12(ACTIVATE(n__zWquot(y0, y1))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) -> c15(ZWQUOT(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) -> c15(ZWQUOT(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) SEL(s(s(y0)), cons(z1, cons(y1, y2))) -> c3(SEL(s(y0), cons(y1, y2))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) -> c3(SEL(s(y0), cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(y2, y3)))) -> c3(SEL(s(y0), cons(y1, n__zWquot(y2, y3)))) SEL(s(s(y0)), cons(z1, cons(y1, n__from(y2)))) -> c3(SEL(s(y0), cons(y1, n__from(y2)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c3(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) SEL(s(s(y0)), cons(z1, n__from(z2))) -> c3(SEL(s(y0), cons(z2, n__from(s(z2))))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) S tuples: QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) K tuples: ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(s(s(y0)), z1), cons(s(s(y1)), z3)) -> c10(QUOT(s(s(y0)), s(s(y1)))) ZWQUOT(cons(z0, n__zWquot(y0, y1)), cons(z2, z3)) -> c11(ACTIVATE(n__zWquot(y0, y1))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(y0, y1))) -> c12(ACTIVATE(n__zWquot(y0, y1))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) -> c15(ZWQUOT(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) -> c15(ZWQUOT(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, QUOT_2, ZWQUOT_2, ACTIVATE_1, MINUS_2 Compound Symbols: c3_2, c7_2, c10_1, c11_1, c12_1, c15_1, c3_1, c7_1, c5_1 ---------------------------------------- (163) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace QUOT(s(s(s(z0))), s(s(s(z1)))) -> c7(QUOT(minus(z0, z1), s(s(s(z1)))), MINUS(s(s(z0)), s(s(z1)))) by QUOT(s(s(s(s(y0)))), s(s(s(s(y1))))) -> c7(QUOT(minus(s(y0), s(y1)), s(s(s(s(y1))))), MINUS(s(s(s(y0))), s(s(s(y1))))) ---------------------------------------- (164) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(s(s(y0)), z1), cons(s(s(y1)), z3)) -> c10(QUOT(s(s(y0)), s(s(y1)))) ZWQUOT(cons(z0, n__zWquot(y0, y1)), cons(z2, z3)) -> c11(ACTIVATE(n__zWquot(y0, y1))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(y0, y1))) -> c12(ACTIVATE(n__zWquot(y0, y1))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) -> c15(ZWQUOT(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) -> c15(ZWQUOT(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) SEL(s(s(y0)), cons(z1, cons(y1, y2))) -> c3(SEL(s(y0), cons(y1, y2))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) -> c3(SEL(s(y0), cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(y2, y3)))) -> c3(SEL(s(y0), cons(y1, n__zWquot(y2, y3)))) SEL(s(s(y0)), cons(z1, cons(y1, n__from(y2)))) -> c3(SEL(s(y0), cons(y1, n__from(y2)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c3(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) SEL(s(s(y0)), cons(z1, n__from(z2))) -> c3(SEL(s(y0), cons(z2, n__from(s(z2))))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) QUOT(s(s(s(s(y0)))), s(s(s(s(y1))))) -> c7(QUOT(minus(s(y0), s(y1)), s(s(s(s(y1))))), MINUS(s(s(s(y0))), s(s(s(y1))))) S tuples: MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) QUOT(s(s(s(s(y0)))), s(s(s(s(y1))))) -> c7(QUOT(minus(s(y0), s(y1)), s(s(s(s(y1))))), MINUS(s(s(s(y0))), s(s(s(y1))))) K tuples: ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(s(s(y0)), z1), cons(s(s(y1)), z3)) -> c10(QUOT(s(s(y0)), s(s(y1)))) ZWQUOT(cons(z0, n__zWquot(y0, y1)), cons(z2, z3)) -> c11(ACTIVATE(n__zWquot(y0, y1))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(y0, y1))) -> c12(ACTIVATE(n__zWquot(y0, y1))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) -> c15(ZWQUOT(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) -> c15(ZWQUOT(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, ZWQUOT_2, ACTIVATE_1, QUOT_2, MINUS_2 Compound Symbols: c3_2, c10_1, c11_1, c12_1, c15_1, c3_1, c7_1, c5_1, c7_2 ---------------------------------------- (165) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace ZWQUOT(cons(s(s(y0)), z1), cons(s(s(y1)), z3)) -> c10(QUOT(s(s(y0)), s(s(y1)))) by ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ---------------------------------------- (166) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(z0, n__zWquot(y0, y1)), cons(z2, z3)) -> c11(ACTIVATE(n__zWquot(y0, y1))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(y0, y1))) -> c12(ACTIVATE(n__zWquot(y0, y1))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) -> c15(ZWQUOT(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) -> c15(ZWQUOT(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) SEL(s(s(y0)), cons(z1, cons(y1, y2))) -> c3(SEL(s(y0), cons(y1, y2))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) -> c3(SEL(s(y0), cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(y2, y3)))) -> c3(SEL(s(y0), cons(y1, n__zWquot(y2, y3)))) SEL(s(s(y0)), cons(z1, cons(y1, n__from(y2)))) -> c3(SEL(s(y0), cons(y1, n__from(y2)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c3(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) SEL(s(s(y0)), cons(z1, n__from(z2))) -> c3(SEL(s(y0), cons(z2, n__from(s(z2))))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) QUOT(s(s(s(s(y0)))), s(s(s(s(y1))))) -> c7(QUOT(minus(s(y0), s(y1)), s(s(s(s(y1))))), MINUS(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) S tuples: MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) QUOT(s(s(s(s(y0)))), s(s(s(s(y1))))) -> c7(QUOT(minus(s(y0), s(y1)), s(s(s(s(y1))))), MINUS(s(s(s(y0))), s(s(s(y1))))) K tuples: ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(z0, n__zWquot(y0, y1)), cons(z2, z3)) -> c11(ACTIVATE(n__zWquot(y0, y1))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(y0, y1))) -> c12(ACTIVATE(n__zWquot(y0, y1))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) -> c15(ZWQUOT(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) -> c15(ZWQUOT(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, ZWQUOT_2, ACTIVATE_1, QUOT_2, MINUS_2 Compound Symbols: c3_2, c10_1, c11_1, c12_1, c15_1, c3_1, c7_1, c5_1, c7_2 ---------------------------------------- (167) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace ZWQUOT(cons(z0, n__zWquot(y0, y1)), cons(z2, z3)) -> c11(ACTIVATE(n__zWquot(y0, y1))) by ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ---------------------------------------- (168) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(y0, y1))) -> c12(ACTIVATE(n__zWquot(y0, y1))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) -> c15(ZWQUOT(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) -> c15(ZWQUOT(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) SEL(s(s(y0)), cons(z1, cons(y1, y2))) -> c3(SEL(s(y0), cons(y1, y2))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) -> c3(SEL(s(y0), cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(y2, y3)))) -> c3(SEL(s(y0), cons(y1, n__zWquot(y2, y3)))) SEL(s(s(y0)), cons(z1, cons(y1, n__from(y2)))) -> c3(SEL(s(y0), cons(y1, n__from(y2)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c3(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) SEL(s(s(y0)), cons(z1, n__from(z2))) -> c3(SEL(s(y0), cons(z2, n__from(s(z2))))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) QUOT(s(s(s(s(y0)))), s(s(s(s(y1))))) -> c7(QUOT(minus(s(y0), s(y1)), s(s(s(s(y1))))), MINUS(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) S tuples: MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) QUOT(s(s(s(s(y0)))), s(s(s(s(y1))))) -> c7(QUOT(minus(s(y0), s(y1)), s(s(s(s(y1))))), MINUS(s(s(s(y0))), s(s(s(y1))))) K tuples: ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(y0, y1))) -> c12(ACTIVATE(n__zWquot(y0, y1))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) -> c15(ZWQUOT(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) -> c15(ZWQUOT(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, ZWQUOT_2, ACTIVATE_1, QUOT_2, MINUS_2 Compound Symbols: c3_2, c10_1, c12_1, c15_1, c3_1, c7_1, c5_1, c7_2, c11_1 ---------------------------------------- (169) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(y0, y1))) -> c12(ACTIVATE(n__zWquot(y0, y1))) by ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ---------------------------------------- (170) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) -> c15(ZWQUOT(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) -> c15(ZWQUOT(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) SEL(s(s(y0)), cons(z1, cons(y1, y2))) -> c3(SEL(s(y0), cons(y1, y2))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) -> c3(SEL(s(y0), cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(y2, y3)))) -> c3(SEL(s(y0), cons(y1, n__zWquot(y2, y3)))) SEL(s(s(y0)), cons(z1, cons(y1, n__from(y2)))) -> c3(SEL(s(y0), cons(y1, n__from(y2)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c3(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) SEL(s(s(y0)), cons(z1, n__from(z2))) -> c3(SEL(s(y0), cons(z2, n__from(s(z2))))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) QUOT(s(s(s(s(y0)))), s(s(s(s(y1))))) -> c7(QUOT(minus(s(y0), s(y1)), s(s(s(s(y1))))), MINUS(s(s(s(y0))), s(s(s(y1))))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) S tuples: MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) QUOT(s(s(s(s(y0)))), s(s(s(s(y1))))) -> c7(QUOT(minus(s(y0), s(y1)), s(s(s(s(y1))))), MINUS(s(s(s(y0))), s(s(s(y1))))) K tuples: ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) -> c15(ZWQUOT(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) -> c15(ZWQUOT(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, ZWQUOT_2, ACTIVATE_1, QUOT_2, MINUS_2 Compound Symbols: c3_2, c10_1, c15_1, c3_1, c7_1, c5_1, c7_2, c11_1, c12_1 ---------------------------------------- (171) CdtRewritingProof (BOTH BOUNDS(ID, ID)) Used rewriting to replace QUOT(s(s(s(s(y0)))), s(s(s(s(y1))))) -> c7(QUOT(minus(s(y0), s(y1)), s(s(s(s(y1))))), MINUS(s(s(s(y0))), s(s(s(y1))))) by QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) ---------------------------------------- (172) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) -> c15(ZWQUOT(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) -> c15(ZWQUOT(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) SEL(s(s(y0)), cons(z1, cons(y1, y2))) -> c3(SEL(s(y0), cons(y1, y2))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) -> c3(SEL(s(y0), cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(y2, y3)))) -> c3(SEL(s(y0), cons(y1, n__zWquot(y2, y3)))) SEL(s(s(y0)), cons(z1, cons(y1, n__from(y2)))) -> c3(SEL(s(y0), cons(y1, n__from(y2)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c3(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) SEL(s(s(y0)), cons(z1, n__from(z2))) -> c3(SEL(s(y0), cons(z2, n__from(s(z2))))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) S tuples: MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) K tuples: ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) -> c15(ZWQUOT(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) -> c15(ZWQUOT(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, ZWQUOT_2, ACTIVATE_1, QUOT_2, MINUS_2 Compound Symbols: c3_2, c10_1, c15_1, c3_1, c7_1, c5_1, c11_1, c12_1, c7_2 ---------------------------------------- (173) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) -> c15(ZWQUOT(cons(s(s(y0)), y1), cons(s(s(y2)), y3))) by ACTIVATE(n__zWquot(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), z3))) -> c15(ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), z3))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ---------------------------------------- (174) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) -> c15(ZWQUOT(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) SEL(s(s(y0)), cons(z1, cons(y1, y2))) -> c3(SEL(s(y0), cons(y1, y2))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) -> c3(SEL(s(y0), cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(y2, y3)))) -> c3(SEL(s(y0), cons(y1, n__zWquot(y2, y3)))) SEL(s(s(y0)), cons(z1, cons(y1, n__from(y2)))) -> c3(SEL(s(y0), cons(y1, n__from(y2)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c3(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) SEL(s(s(y0)), cons(z1, n__from(z2))) -> c3(SEL(s(y0), cons(z2, n__from(s(z2))))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) S tuples: MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) K tuples: ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) -> c15(ZWQUOT(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, ZWQUOT_2, ACTIVATE_1, QUOT_2, MINUS_2 Compound Symbols: c3_2, c10_1, c15_1, c3_1, c7_1, c5_1, c11_1, c12_1, c7_2 ---------------------------------------- (175) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) -> c15(ZWQUOT(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))) by ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) -> c15(ZWQUOT(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ---------------------------------------- (176) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) SEL(s(s(y0)), cons(z1, cons(y1, y2))) -> c3(SEL(s(y0), cons(y1, y2))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) -> c3(SEL(s(y0), cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(y2, y3)))) -> c3(SEL(s(y0), cons(y1, n__zWquot(y2, y3)))) SEL(s(s(y0)), cons(z1, cons(y1, n__from(y2)))) -> c3(SEL(s(y0), cons(y1, n__from(y2)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c3(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) SEL(s(s(y0)), cons(z1, n__from(z2))) -> c3(SEL(s(y0), cons(z2, n__from(s(z2))))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) -> c15(ZWQUOT(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) S tuples: MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) K tuples: ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) -> c15(ZWQUOT(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, ZWQUOT_2, ACTIVATE_1, QUOT_2, MINUS_2 Compound Symbols: c3_2, c10_1, c15_1, c3_1, c7_1, c5_1, c11_1, c12_1, c7_2 ---------------------------------------- (177) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) -> c15(ZWQUOT(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))) by ACTIVATE(n__zWquot(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ---------------------------------------- (178) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) SEL(s(s(y0)), cons(z1, cons(y1, y2))) -> c3(SEL(s(y0), cons(y1, y2))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) -> c3(SEL(s(y0), cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(y2, y3)))) -> c3(SEL(s(y0), cons(y1, n__zWquot(y2, y3)))) SEL(s(s(y0)), cons(z1, cons(y1, n__from(y2)))) -> c3(SEL(s(y0), cons(y1, n__from(y2)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c3(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) SEL(s(s(y0)), cons(z1, n__from(z2))) -> c3(SEL(s(y0), cons(z2, n__from(s(z2))))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) -> c15(ZWQUOT(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) S tuples: MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) K tuples: ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) -> c15(ZWQUOT(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, ZWQUOT_2, ACTIVATE_1, QUOT_2, MINUS_2 Compound Symbols: c3_2, c10_1, c15_1, c3_1, c7_1, c5_1, c11_1, c12_1, c7_2 ---------------------------------------- (179) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace SEL(s(s(y0)), cons(z1, cons(y1, y2))) -> c3(SEL(s(y0), cons(y1, y2))) by SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(y2, y3), cons(y4, y5))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(y2, y3), cons(y4, y5))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, y3)))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, y3)))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__zWquot(cons(y3, y4), cons(y5, y6)))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__zWquot(cons(y3, y4), cons(y5, y6)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__zWquot(y3, y4))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__zWquot(y3, y4))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__from(y3))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__from(y3))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(s(s(s(y2))), y3), cons(s(s(s(y4))), y5))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(s(s(s(y2))), y3), cons(s(s(s(y4))), y5))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(s(s(y2)), y3), cons(s(s(y4)), y5))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(s(s(y2)), y3), cons(s(s(y4)), y5))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(y2, n__zWquot(y3, y4)), cons(y5, y6))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(y2, n__zWquot(y3, y4)), cons(y5, y6))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(y2, y3), cons(y4, n__zWquot(y5, y6)))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(y2, y3), cons(y4, n__zWquot(y5, y6)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, n__from(y2)))) -> c3(SEL(s(s(y0)), cons(z2, n__from(y2)))) ---------------------------------------- (180) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) -> c3(SEL(s(y0), cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(y2, y3)))) -> c3(SEL(s(y0), cons(y1, n__zWquot(y2, y3)))) SEL(s(s(y0)), cons(z1, cons(y1, n__from(y2)))) -> c3(SEL(s(y0), cons(y1, n__from(y2)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c3(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) SEL(s(s(y0)), cons(z1, n__from(z2))) -> c3(SEL(s(y0), cons(z2, n__from(s(z2))))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) -> c15(ZWQUOT(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, y3)))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, y3)))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__zWquot(cons(y3, y4), cons(y5, y6)))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__zWquot(cons(y3, y4), cons(y5, y6)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__zWquot(y3, y4))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__zWquot(y3, y4))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__from(y3))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__from(y3))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(s(s(s(y2))), y3), cons(s(s(s(y4))), y5))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(s(s(s(y2))), y3), cons(s(s(s(y4))), y5))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(s(s(y2)), y3), cons(s(s(y4)), y5))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(s(s(y2)), y3), cons(s(s(y4)), y5))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(y2, n__zWquot(y3, y4)), cons(y5, y6))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(y2, n__zWquot(y3, y4)), cons(y5, y6))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(y2, y3), cons(y4, n__zWquot(y5, y6)))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(y2, y3), cons(y4, n__zWquot(y5, y6)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, n__from(y2)))) -> c3(SEL(s(s(y0)), cons(z2, n__from(y2)))) S tuples: MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) K tuples: ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) -> c15(ZWQUOT(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, ZWQUOT_2, ACTIVATE_1, QUOT_2, MINUS_2 Compound Symbols: c3_2, c10_1, c15_1, c3_1, c7_1, c5_1, c11_1, c12_1, c7_2 ---------------------------------------- (181) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(y2, y3)))) -> c3(SEL(s(y0), cons(y1, n__zWquot(y2, y3)))) by SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(y2, y3), cons(y4, y5))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(y2, y3), cons(y4, y5))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(s(s(s(y2))), y3), cons(s(s(s(y4))), y5))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(s(s(s(y2))), y3), cons(s(s(s(y4))), y5))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(s(s(y2)), y3), cons(s(s(y4)), y5))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(s(s(y2)), y3), cons(s(s(y4)), y5))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(y2, n__zWquot(y3, y4)), cons(y5, y6))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(y2, n__zWquot(y3, y4)), cons(y5, y6))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(y2, y3), cons(y4, n__zWquot(y5, y6)))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(y2, y3), cons(y4, n__zWquot(y5, y6)))))) ---------------------------------------- (182) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) -> c3(SEL(s(y0), cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) SEL(s(s(y0)), cons(z1, cons(y1, n__from(y2)))) -> c3(SEL(s(y0), cons(y1, n__from(y2)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c3(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) SEL(s(s(y0)), cons(z1, n__from(z2))) -> c3(SEL(s(y0), cons(z2, n__from(s(z2))))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) -> c15(ZWQUOT(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, y3)))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, y3)))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__zWquot(cons(y3, y4), cons(y5, y6)))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__zWquot(cons(y3, y4), cons(y5, y6)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__zWquot(y3, y4))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__zWquot(y3, y4))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__from(y3))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__from(y3))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(s(s(s(y2))), y3), cons(s(s(s(y4))), y5))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(s(s(s(y2))), y3), cons(s(s(s(y4))), y5))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(s(s(y2)), y3), cons(s(s(y4)), y5))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(s(s(y2)), y3), cons(s(s(y4)), y5))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(y2, n__zWquot(y3, y4)), cons(y5, y6))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(y2, n__zWquot(y3, y4)), cons(y5, y6))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(y2, y3), cons(y4, n__zWquot(y5, y6)))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(y2, y3), cons(y4, n__zWquot(y5, y6)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, n__from(y2)))) -> c3(SEL(s(s(y0)), cons(z2, n__from(y2)))) S tuples: MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) K tuples: ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) -> c15(ZWQUOT(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, ZWQUOT_2, ACTIVATE_1, QUOT_2, MINUS_2 Compound Symbols: c3_2, c10_1, c15_1, c3_1, c7_1, c5_1, c11_1, c12_1, c7_2 ---------------------------------------- (183) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace SEL(s(s(y0)), cons(z1, cons(y1, n__from(y2)))) -> c3(SEL(s(y0), cons(y1, n__from(y2)))) by SEL(s(s(s(y0))), cons(z1, cons(z2, n__from(z3)))) -> c3(SEL(s(s(y0)), cons(z2, n__from(z3)))) ---------------------------------------- (184) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) -> c3(SEL(s(y0), cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c3(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) SEL(s(s(y0)), cons(z1, n__from(z2))) -> c3(SEL(s(y0), cons(z2, n__from(s(z2))))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) -> c15(ZWQUOT(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, y3)))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, y3)))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__zWquot(cons(y3, y4), cons(y5, y6)))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__zWquot(cons(y3, y4), cons(y5, y6)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__zWquot(y3, y4))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__zWquot(y3, y4))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__from(y3))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__from(y3))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(s(s(s(y2))), y3), cons(s(s(s(y4))), y5))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(s(s(s(y2))), y3), cons(s(s(s(y4))), y5))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(s(s(y2)), y3), cons(s(s(y4)), y5))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(s(s(y2)), y3), cons(s(s(y4)), y5))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(y2, n__zWquot(y3, y4)), cons(y5, y6))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(y2, n__zWquot(y3, y4)), cons(y5, y6))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(y2, y3), cons(y4, n__zWquot(y5, y6)))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(y2, y3), cons(y4, n__zWquot(y5, y6)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, n__from(y2)))) -> c3(SEL(s(s(y0)), cons(z2, n__from(y2)))) S tuples: MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) K tuples: ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) -> c15(ZWQUOT(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, ZWQUOT_2, ACTIVATE_1, QUOT_2, MINUS_2 Compound Symbols: c3_2, c10_1, c15_1, c3_1, c7_1, c5_1, c11_1, c12_1, c7_2 ---------------------------------------- (185) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) by SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), z3), cons(s(s(s(y2))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), z3), cons(s(s(s(y2))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), n__zWquot(y1, y2)), cons(s(s(s(y3))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(y1, y2)), cons(s(s(s(y3))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(y1, y2)), cons(s(s(s(s(y3)))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(y1, y2)), cons(s(s(s(s(y3)))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), z3), cons(s(s(s(y2))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), z3), cons(s(s(s(y2))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), n__zWquot(y7, y8))))) ---------------------------------------- (186) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) -> c3(SEL(s(y0), cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c3(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) SEL(s(s(y0)), cons(z1, n__from(z2))) -> c3(SEL(s(y0), cons(z2, n__from(s(z2))))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) -> c15(ZWQUOT(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, y3)))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, y3)))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__zWquot(cons(y3, y4), cons(y5, y6)))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__zWquot(cons(y3, y4), cons(y5, y6)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__zWquot(y3, y4))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__zWquot(y3, y4))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__from(y3))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__from(y3))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(s(s(s(y2))), y3), cons(s(s(s(y4))), y5))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(s(s(s(y2))), y3), cons(s(s(s(y4))), y5))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(s(s(y2)), y3), cons(s(s(y4)), y5))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(s(s(y2)), y3), cons(s(s(y4)), y5))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(y2, n__zWquot(y3, y4)), cons(y5, y6))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(y2, n__zWquot(y3, y4)), cons(y5, y6))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(y2, y3), cons(y4, n__zWquot(y5, y6)))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(y2, y3), cons(y4, n__zWquot(y5, y6)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, n__from(y2)))) -> c3(SEL(s(s(y0)), cons(z2, n__from(y2)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), n__zWquot(y1, y2)), cons(s(s(s(y3))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(y1, y2)), cons(s(s(s(y3))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(y1, y2)), cons(s(s(s(s(y3)))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(y1, y2)), cons(s(s(s(s(y3)))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), z3), cons(s(s(s(y2))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), z3), cons(s(s(s(y2))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), n__zWquot(y7, y8))))) S tuples: MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) K tuples: ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) -> c15(ZWQUOT(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, ZWQUOT_2, ACTIVATE_1, QUOT_2, MINUS_2 Compound Symbols: c3_2, c10_1, c15_1, c3_1, c7_1, c5_1, c11_1, c12_1, c7_2 ---------------------------------------- (187) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace SEL(s(z0), cons(z1, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c3(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) by SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), n__zWquot(z3, z4)), cons(s(s(s(y2))), z6)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z3, z4)), cons(s(s(s(y2))), z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z3, z4)), cons(s(s(s(s(y2)))), z6)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z3, z4)), cons(s(s(s(s(y2)))), z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(y5)), z6)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(y5)), z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(y5)), z6)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(y5)), z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(y6)), z6)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(y6)), z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(y6)), z6)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(y6)), z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), n__zWquot(z3, z4)), cons(s(s(y2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), n__zWquot(z3, z4)), cons(s(s(y2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), n__zWquot(z3, z4)), cons(s(s(y2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), n__zWquot(z3, z4)), cons(s(s(y2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), n__zWquot(z3, z4)), cons(s(s(y2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), n__zWquot(z3, z4)), cons(s(s(y2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), n__zWquot(z3, z4)), cons(s(s(y2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), n__zWquot(z3, z4)), cons(s(s(y2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), n__zWquot(z3, z4)), cons(s(s(s(y2))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z3, z4)), cons(s(s(s(y2))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z3, z4)), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z3, z4)), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, n__zWquot(y7, y8))))) ---------------------------------------- (188) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) -> c3(SEL(s(y0), cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c3(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) SEL(s(s(y0)), cons(z1, n__from(z2))) -> c3(SEL(s(y0), cons(z2, n__from(s(z2))))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) -> c15(ZWQUOT(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, y3)))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, y3)))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__zWquot(cons(y3, y4), cons(y5, y6)))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__zWquot(cons(y3, y4), cons(y5, y6)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__zWquot(y3, y4))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__zWquot(y3, y4))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__from(y3))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__from(y3))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(s(s(s(y2))), y3), cons(s(s(s(y4))), y5))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(s(s(s(y2))), y3), cons(s(s(s(y4))), y5))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(s(s(y2)), y3), cons(s(s(y4)), y5))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(s(s(y2)), y3), cons(s(s(y4)), y5))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(y2, n__zWquot(y3, y4)), cons(y5, y6))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(y2, n__zWquot(y3, y4)), cons(y5, y6))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(y2, y3), cons(y4, n__zWquot(y5, y6)))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(y2, y3), cons(y4, n__zWquot(y5, y6)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, n__from(y2)))) -> c3(SEL(s(s(y0)), cons(z2, n__from(y2)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), n__zWquot(y1, y2)), cons(s(s(s(y3))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(y1, y2)), cons(s(s(s(y3))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(y1, y2)), cons(s(s(s(s(y3)))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(y1, y2)), cons(s(s(s(s(y3)))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), z3), cons(s(s(s(y2))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), z3), cons(s(s(s(y2))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), n__zWquot(z3, z4)), cons(s(s(s(y2))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z3, z4)), cons(s(s(s(y2))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z3, z4)), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z3, z4)), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, n__zWquot(y7, y8))))) S tuples: MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) K tuples: ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) -> c15(ZWQUOT(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, ZWQUOT_2, ACTIVATE_1, QUOT_2, MINUS_2 Compound Symbols: c3_2, c10_1, c15_1, c3_1, c7_1, c5_1, c11_1, c12_1, c7_2 ---------------------------------------- (189) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace SEL(s(z0), cons(z1, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) by SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), z3), cons(s(s(s(y2))), n__zWquot(z5, z6))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), z3), cons(s(s(s(y2))), n__zWquot(z5, z6))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), n__zWquot(z5, z6))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), n__zWquot(z5, z6))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(y5)), n__zWquot(z5, z6))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(y5)), n__zWquot(z5, z6))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(y5)), n__zWquot(z5, z6))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(y5)), n__zWquot(z5, z6))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(y6)), n__zWquot(z5, z6))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(y6)), n__zWquot(z5, z6))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(y6)), n__zWquot(z5, z6))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(y6)), n__zWquot(z5, z6))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), z3), cons(s(s(y2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), z3), cons(s(s(y2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), z3), cons(s(s(y2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), z3), cons(s(s(y2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), z3), cons(s(s(y2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), z3), cons(s(s(y2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), z3), cons(s(s(y2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), z3), cons(s(s(y2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), n__zWquot(y1, y2)), cons(s(s(s(y3))), n__zWquot(z5, z6))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(y1, y2)), cons(s(s(s(y3))), n__zWquot(z5, z6))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(y1, y2)), cons(s(s(s(s(y3)))), n__zWquot(z5, z6))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(y1, y2)), cons(s(s(s(s(y3)))), n__zWquot(z5, z6))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z4, n__zWquot(z5, z6))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z4, n__zWquot(z5, z6))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z4, n__zWquot(z5, z6))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z4, n__zWquot(z5, z6))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z4, n__zWquot(z5, z6))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z4, n__zWquot(z5, z6))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z4, n__zWquot(z5, z6))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z4, n__zWquot(z5, z6))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(y1, y2)), cons(z4, n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(y1, y2)), cons(z4, n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(y1, y2)), cons(z4, n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(y1, y2)), cons(z4, n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(y1, y2)), cons(z4, n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(y1, y2)), cons(z4, n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(y1, y2)), cons(z4, n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(y1, y2)), cons(z4, n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) ---------------------------------------- (190) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) -> c3(SEL(s(y0), cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c3(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) SEL(s(s(y0)), cons(z1, n__from(z2))) -> c3(SEL(s(y0), cons(z2, n__from(s(z2))))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) -> c15(ZWQUOT(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, y3)))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, y3)))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__zWquot(cons(y3, y4), cons(y5, y6)))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__zWquot(cons(y3, y4), cons(y5, y6)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__zWquot(y3, y4))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__zWquot(y3, y4))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__from(y3))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__from(y3))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(s(s(s(y2))), y3), cons(s(s(s(y4))), y5))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(s(s(s(y2))), y3), cons(s(s(s(y4))), y5))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(s(s(y2)), y3), cons(s(s(y4)), y5))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(s(s(y2)), y3), cons(s(s(y4)), y5))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(y2, n__zWquot(y3, y4)), cons(y5, y6))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(y2, n__zWquot(y3, y4)), cons(y5, y6))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(y2, y3), cons(y4, n__zWquot(y5, y6)))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(y2, y3), cons(y4, n__zWquot(y5, y6)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, n__from(y2)))) -> c3(SEL(s(s(y0)), cons(z2, n__from(y2)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), n__zWquot(y1, y2)), cons(s(s(s(y3))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(y1, y2)), cons(s(s(s(y3))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(y1, y2)), cons(s(s(s(s(y3)))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(y1, y2)), cons(s(s(s(s(y3)))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), z3), cons(s(s(s(y2))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), z3), cons(s(s(s(y2))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), n__zWquot(z3, z4)), cons(s(s(s(y2))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z3, z4)), cons(s(s(s(y2))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z3, z4)), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z3, z4)), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) S tuples: MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) K tuples: ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) -> c15(ZWQUOT(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, ZWQUOT_2, ACTIVATE_1, QUOT_2, MINUS_2 Compound Symbols: c3_2, c10_1, c15_1, c3_1, c7_1, c5_1, c11_1, c12_1, c7_2 ---------------------------------------- (191) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) by SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), z3), cons(s(s(s(y2))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), z3), cons(s(s(s(y2))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), n__zWquot(y1, y2)), cons(s(s(s(y3))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(y1, y2)), cons(s(s(s(y3))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(y1, y2)), cons(s(s(s(s(y3)))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(y1, y2)), cons(s(s(s(s(y3)))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), z3), cons(s(s(s(y2))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), z3), cons(s(s(s(y2))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), n__zWquot(y7, y8))))) ---------------------------------------- (192) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) -> c3(SEL(s(y0), cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c3(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) SEL(s(s(y0)), cons(z1, n__from(z2))) -> c3(SEL(s(y0), cons(z2, n__from(s(z2))))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) -> c15(ZWQUOT(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, y3)))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, y3)))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__zWquot(cons(y3, y4), cons(y5, y6)))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__zWquot(cons(y3, y4), cons(y5, y6)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__zWquot(y3, y4))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__zWquot(y3, y4))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__from(y3))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__from(y3))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(s(s(s(y2))), y3), cons(s(s(s(y4))), y5))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(s(s(s(y2))), y3), cons(s(s(s(y4))), y5))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(s(s(y2)), y3), cons(s(s(y4)), y5))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(s(s(y2)), y3), cons(s(s(y4)), y5))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(y2, n__zWquot(y3, y4)), cons(y5, y6))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(y2, n__zWquot(y3, y4)), cons(y5, y6))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(y2, y3), cons(y4, n__zWquot(y5, y6)))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(y2, y3), cons(y4, n__zWquot(y5, y6)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, n__from(y2)))) -> c3(SEL(s(s(y0)), cons(z2, n__from(y2)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), n__zWquot(y1, y2)), cons(s(s(s(y3))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(y1, y2)), cons(s(s(s(y3))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(y1, y2)), cons(s(s(s(s(y3)))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(y1, y2)), cons(s(s(s(s(y3)))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), z3), cons(s(s(s(y2))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), z3), cons(s(s(s(y2))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), n__zWquot(z3, z4)), cons(s(s(s(y2))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z3, z4)), cons(s(s(s(y2))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z3, z4)), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z3, z4)), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) S tuples: MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) K tuples: ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) -> c15(ZWQUOT(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, ZWQUOT_2, ACTIVATE_1, QUOT_2, MINUS_2 Compound Symbols: c3_2, c10_1, c15_1, c3_1, c7_1, c5_1, c11_1, c12_1, c7_2 ---------------------------------------- (193) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace SEL(s(z0), cons(z1, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c3(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) by SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), n__zWquot(z3, z4)), cons(s(s(s(y2))), z6)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z3, z4)), cons(s(s(s(y2))), z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z3, z4)), cons(s(s(s(s(y2)))), z6)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z3, z4)), cons(s(s(s(s(y2)))), z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(y5)), z6)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(y5)), z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(y5)), z6)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(y5)), z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(y6)), z6)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(y6)), z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(y6)), z6)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(y6)), z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), n__zWquot(z3, z4)), cons(s(s(y2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), n__zWquot(z3, z4)), cons(s(s(y2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), n__zWquot(z3, z4)), cons(s(s(y2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), n__zWquot(z3, z4)), cons(s(s(y2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), n__zWquot(z3, z4)), cons(s(s(y2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), n__zWquot(z3, z4)), cons(s(s(y2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), n__zWquot(z3, z4)), cons(s(s(y2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), n__zWquot(z3, z4)), cons(s(s(y2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), n__zWquot(z3, z4)), cons(s(s(s(y2))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z3, z4)), cons(s(s(s(y2))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z3, z4)), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z3, z4)), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, n__zWquot(y7, y8))))) ---------------------------------------- (194) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) -> c3(SEL(s(y0), cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) SEL(s(z0), cons(z1, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) SEL(s(s(y0)), cons(z1, n__from(z2))) -> c3(SEL(s(y0), cons(z2, n__from(s(z2))))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) -> c15(ZWQUOT(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, y3)))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, y3)))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__zWquot(cons(y3, y4), cons(y5, y6)))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__zWquot(cons(y3, y4), cons(y5, y6)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__zWquot(y3, y4))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__zWquot(y3, y4))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__from(y3))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__from(y3))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(s(s(s(y2))), y3), cons(s(s(s(y4))), y5))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(s(s(s(y2))), y3), cons(s(s(s(y4))), y5))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(s(s(y2)), y3), cons(s(s(y4)), y5))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(s(s(y2)), y3), cons(s(s(y4)), y5))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(y2, n__zWquot(y3, y4)), cons(y5, y6))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(y2, n__zWquot(y3, y4)), cons(y5, y6))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(y2, y3), cons(y4, n__zWquot(y5, y6)))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(y2, y3), cons(y4, n__zWquot(y5, y6)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, n__from(y2)))) -> c3(SEL(s(s(y0)), cons(z2, n__from(y2)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), n__zWquot(y1, y2)), cons(s(s(s(y3))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(y1, y2)), cons(s(s(s(y3))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(y1, y2)), cons(s(s(s(s(y3)))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(y1, y2)), cons(s(s(s(s(y3)))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), z3), cons(s(s(s(y2))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), z3), cons(s(s(s(y2))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), n__zWquot(z3, z4)), cons(s(s(s(y2))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z3, z4)), cons(s(s(s(y2))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z3, z4)), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z3, z4)), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) S tuples: MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) K tuples: ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) -> c15(ZWQUOT(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, ZWQUOT_2, ACTIVATE_1, QUOT_2, MINUS_2 Compound Symbols: c3_2, c10_1, c15_1, c3_1, c7_1, c5_1, c11_1, c12_1, c7_2 ---------------------------------------- (195) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace SEL(s(z0), cons(z1, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) by SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), z3), cons(s(s(s(y2))), n__zWquot(z5, z6))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), z3), cons(s(s(s(y2))), n__zWquot(z5, z6))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), n__zWquot(z5, z6))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), n__zWquot(z5, z6))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(y5)), n__zWquot(z5, z6))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(y5)), n__zWquot(z5, z6))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(y5)), n__zWquot(z5, z6))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(y5)), n__zWquot(z5, z6))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(y6)), n__zWquot(z5, z6))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(y6)), n__zWquot(z5, z6))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(y6)), n__zWquot(z5, z6))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(y6)), n__zWquot(z5, z6))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), z3), cons(s(s(y2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), z3), cons(s(s(y2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), z3), cons(s(s(y2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), z3), cons(s(s(y2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), z3), cons(s(s(y2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), z3), cons(s(s(y2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(y0)), z3), cons(s(s(y2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(y0)), z3), cons(s(s(y2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), n__zWquot(y1, y2)), cons(s(s(s(y3))), n__zWquot(z5, z6))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(y1, y2)), cons(s(s(s(y3))), n__zWquot(z5, z6))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(y1, y2)), cons(s(s(s(s(y3)))), n__zWquot(z5, z6))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(y1, y2)), cons(s(s(s(s(y3)))), n__zWquot(z5, z6))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z4, n__zWquot(z5, z6))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z4, n__zWquot(z5, z6))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z4, n__zWquot(z5, z6))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z4, n__zWquot(z5, z6))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z4, n__zWquot(z5, z6))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z4, n__zWquot(z5, z6))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z4, n__zWquot(z5, z6))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z4, n__zWquot(z5, z6))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(y1, y2)), cons(z4, n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(y1, y2)), cons(z4, n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(y1, y2)), cons(z4, n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(y1, y2)), cons(z4, n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(y1, y2)), cons(z4, n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(y1, y2)), cons(z4, n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(y1, y2)), cons(z4, n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(y1, y2)), cons(z4, n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) ---------------------------------------- (196) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) -> c3(SEL(s(y0), cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) SEL(s(s(y0)), cons(z1, n__from(z2))) -> c3(SEL(s(y0), cons(z2, n__from(s(z2))))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) -> c15(ZWQUOT(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, y3)))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, y3)))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__zWquot(cons(y3, y4), cons(y5, y6)))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__zWquot(cons(y3, y4), cons(y5, y6)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__zWquot(y3, y4))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__zWquot(y3, y4))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__from(y3))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__from(y3))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(s(s(s(y2))), y3), cons(s(s(s(y4))), y5))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(s(s(s(y2))), y3), cons(s(s(s(y4))), y5))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(s(s(y2)), y3), cons(s(s(y4)), y5))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(s(s(y2)), y3), cons(s(s(y4)), y5))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(y2, n__zWquot(y3, y4)), cons(y5, y6))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(y2, n__zWquot(y3, y4)), cons(y5, y6))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(y2, y3), cons(y4, n__zWquot(y5, y6)))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(y2, y3), cons(y4, n__zWquot(y5, y6)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, n__from(y2)))) -> c3(SEL(s(s(y0)), cons(z2, n__from(y2)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), n__zWquot(y1, y2)), cons(s(s(s(y3))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(y1, y2)), cons(s(s(s(y3))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(y1, y2)), cons(s(s(s(s(y3)))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(y1, y2)), cons(s(s(s(s(y3)))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), z3), cons(s(s(s(y2))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), z3), cons(s(s(s(y2))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), n__zWquot(z3, z4)), cons(s(s(s(y2))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z3, z4)), cons(s(s(s(y2))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z3, z4)), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z3, z4)), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) S tuples: MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) K tuples: ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) -> c15(ZWQUOT(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, ZWQUOT_2, ACTIVATE_1, QUOT_2, MINUS_2 Compound Symbols: c3_2, c10_1, c15_1, c3_1, c7_1, c5_1, c11_1, c12_1, c7_2 ---------------------------------------- (197) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace SEL(s(s(y0)), cons(z1, n__from(z2))) -> c3(SEL(s(y0), cons(z2, n__from(s(z2))))) by SEL(s(s(s(y0))), cons(z1, n__from(z2))) -> c3(SEL(s(s(y0)), cons(z2, n__from(s(z2))))) ---------------------------------------- (198) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) -> c3(SEL(s(y0), cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) -> c15(ZWQUOT(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, y3)))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, y3)))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__zWquot(cons(y3, y4), cons(y5, y6)))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__zWquot(cons(y3, y4), cons(y5, y6)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__zWquot(y3, y4))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__zWquot(y3, y4))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__from(y3))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__from(y3))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(s(s(s(y2))), y3), cons(s(s(s(y4))), y5))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(s(s(s(y2))), y3), cons(s(s(s(y4))), y5))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(s(s(y2)), y3), cons(s(s(y4)), y5))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(s(s(y2)), y3), cons(s(s(y4)), y5))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(y2, n__zWquot(y3, y4)), cons(y5, y6))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(y2, n__zWquot(y3, y4)), cons(y5, y6))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(y2, y3), cons(y4, n__zWquot(y5, y6)))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(y2, y3), cons(y4, n__zWquot(y5, y6)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, n__from(y2)))) -> c3(SEL(s(s(y0)), cons(z2, n__from(y2)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), n__zWquot(y1, y2)), cons(s(s(s(y3))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(y1, y2)), cons(s(s(s(y3))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(y1, y2)), cons(s(s(s(s(y3)))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(y1, y2)), cons(s(s(s(s(y3)))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), z3), cons(s(s(s(y2))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), z3), cons(s(s(s(y2))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), n__zWquot(z3, z4)), cons(s(s(s(y2))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z3, z4)), cons(s(s(s(y2))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z3, z4)), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z3, z4)), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) SEL(s(s(s(y0))), cons(z1, n__from(z2))) -> c3(SEL(s(s(y0)), cons(z2, n__from(s(z2))))) S tuples: MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) K tuples: ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) -> c15(ZWQUOT(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, ZWQUOT_2, ACTIVATE_1, QUOT_2, MINUS_2 Compound Symbols: c3_2, c10_1, c15_1, c3_1, c7_1, c5_1, c11_1, c12_1, c7_2 ---------------------------------------- (199) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace QUOT(s(s(s(y0))), s(s(s(y1)))) -> c7(MINUS(s(s(y0)), s(s(y1)))) by QUOT(s(s(s(s(y0)))), s(s(s(s(y1))))) -> c7(MINUS(s(s(s(y0))), s(s(s(y1))))) ---------------------------------------- (200) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) -> c3(SEL(s(y0), cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) -> c15(ZWQUOT(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, y3)))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, y3)))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__zWquot(cons(y3, y4), cons(y5, y6)))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__zWquot(cons(y3, y4), cons(y5, y6)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__zWquot(y3, y4))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__zWquot(y3, y4))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__from(y3))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__from(y3))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(s(s(s(y2))), y3), cons(s(s(s(y4))), y5))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(s(s(s(y2))), y3), cons(s(s(s(y4))), y5))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(s(s(y2)), y3), cons(s(s(y4)), y5))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(s(s(y2)), y3), cons(s(s(y4)), y5))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(y2, n__zWquot(y3, y4)), cons(y5, y6))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(y2, n__zWquot(y3, y4)), cons(y5, y6))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(y2, y3), cons(y4, n__zWquot(y5, y6)))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(y2, y3), cons(y4, n__zWquot(y5, y6)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, n__from(y2)))) -> c3(SEL(s(s(y0)), cons(z2, n__from(y2)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), n__zWquot(y1, y2)), cons(s(s(s(y3))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(y1, y2)), cons(s(s(s(y3))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(y1, y2)), cons(s(s(s(s(y3)))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(y1, y2)), cons(s(s(s(s(y3)))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), z3), cons(s(s(s(y2))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), z3), cons(s(s(s(y2))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), n__zWquot(z3, z4)), cons(s(s(s(y2))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z3, z4)), cons(s(s(s(y2))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z3, z4)), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z3, z4)), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) SEL(s(s(s(y0))), cons(z1, n__from(z2))) -> c3(SEL(s(s(y0)), cons(z2, n__from(s(z2))))) QUOT(s(s(s(s(y0)))), s(s(s(s(y1))))) -> c7(MINUS(s(s(s(y0))), s(s(s(y1))))) S tuples: MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) K tuples: ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) -> c15(ZWQUOT(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) QUOT(s(s(s(s(y0)))), s(s(s(s(y1))))) -> c7(MINUS(s(s(s(y0))), s(s(s(y1))))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, ZWQUOT_2, ACTIVATE_1, MINUS_2, QUOT_2 Compound Symbols: c3_2, c10_1, c15_1, c3_1, c5_1, c11_1, c12_1, c7_2, c7_1 ---------------------------------------- (201) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) by ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ---------------------------------------- (202) Obligation: Complexity Dependency Tuples Problem Rules: activate(n__from(z0)) -> from(z0) activate(n__zWquot(z0, z1)) -> zWquot(z0, z1) activate(z0) -> z0 from(z0) -> cons(z0, n__from(s(z0))) from(z0) -> n__from(z0) zWquot(z0, nil) -> nil zWquot(nil, z0) -> nil zWquot(cons(z0, z1), cons(z2, z3)) -> cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3))) zWquot(z0, z1) -> n__zWquot(z0, z1) quot(0, s(z0)) -> 0 quot(s(z0), s(z1)) -> s(quot(minus(z0, z1), s(z1))) minus(z0, 0) -> 0 minus(s(z0), s(z1)) -> minus(z0, z1) Tuples: SEL(s(x0), cons(x1, n__zWquot(cons(z0, z1), cons(z2, z3)))) -> c3(SEL(x0, cons(quot(z0, z2), n__zWquot(activate(z1), activate(z3)))), ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, z3)))) ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y1))), z3)) -> c10(QUOT(s(s(s(y0))), s(s(s(y1))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) SEL(s(s(y0)), cons(z1, cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) -> c3(SEL(s(y0), cons(y1, n__zWquot(cons(y2, y3), cons(y4, y5))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) -> c15(ZWQUOT(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, y3)))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, y3)))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__zWquot(cons(y3, y4), cons(y5, y6)))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__zWquot(cons(y3, y4), cons(y5, y6)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__zWquot(y3, y4))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__zWquot(y3, y4))))) SEL(s(s(s(y0))), cons(z1, cons(z2, cons(y2, n__from(y3))))) -> c3(SEL(s(s(y0)), cons(z2, cons(y2, n__from(y3))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(s(s(s(y2))), y3), cons(s(s(s(y4))), y5))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(s(s(s(y2))), y3), cons(s(s(s(y4))), y5))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(s(s(y2)), y3), cons(s(s(y4)), y5))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(s(s(y2)), y3), cons(s(s(y4)), y5))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(y2, n__zWquot(y3, y4)), cons(y5, y6))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(y2, n__zWquot(y3, y4)), cons(y5, y6))))) SEL(s(s(z0)), cons(z1, cons(z2, n__zWquot(cons(y2, y3), cons(y4, n__zWquot(y5, y6)))))) -> c3(SEL(s(z0), cons(z2, n__zWquot(cons(y2, y3), cons(y4, n__zWquot(y5, y6)))))) SEL(s(s(s(y0))), cons(z1, cons(z2, n__from(y2)))) -> c3(SEL(s(s(y0)), cons(z2, n__from(y2)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), z3), cons(s(s(z4)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), n__zWquot(y1, y2)), cons(s(s(s(y3))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(y1, y2)), cons(s(s(s(y3))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(y1, y2)), cons(s(s(s(s(y3)))), z5)))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(y1, y2)), cons(s(s(s(s(y3)))), z5)))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(y1, y2)), cons(s(s(z4)), n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), z3), cons(s(s(s(y2))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), z3), cons(s(s(s(y2))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z3), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z4)), n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z4)), n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(z2)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z4)), n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, z6)))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, z6)))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(s(y4))), y5), cons(s(s(s(y6))), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(s(s(y4)), y5), cons(s(s(y6)), y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, n__zWquot(y5, y6)), cons(y7, y8)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(z3, z4)), cons(z5, n__zWquot(cons(y4, y5), cons(y6, n__zWquot(y7, y8))))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(y0))), n__zWquot(z3, z4)), cons(s(s(s(y2))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z3, z4)), cons(s(s(s(y2))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z3, z4)), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) -> c3(ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z3, z4)), cons(s(s(s(s(y2)))), n__zWquot(y3, y4))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z5, n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, n__zWquot(y6, y7))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z5, n__zWquot(y6, y7))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z5, n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, n__zWquot(y7, y8))))) -> c3(ACTIVATE(n__zWquot(cons(z2, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z5, n__zWquot(y7, y8))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7)))))) SEL(s(z0), cons(z1, n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) -> c3(ACTIVATE(n__zWquot(cons(z2, z3), cons(z4, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7))))))) SEL(s(s(s(y0))), cons(z1, n__from(z2))) -> c3(SEL(s(s(y0)), cons(z2, n__from(s(z2))))) QUOT(s(s(s(s(y0)))), s(s(s(s(y1))))) -> c7(MINUS(s(s(s(y0))), s(s(s(y1))))) S tuples: MINUS(s(s(s(y0))), s(s(s(y1)))) -> c5(MINUS(s(s(y0)), s(s(y1)))) QUOT(s(s(s(s(z0)))), s(s(s(s(z1))))) -> c7(QUOT(minus(z0, z1), s(s(s(s(z1))))), MINUS(s(s(s(z0))), s(s(s(z1))))) K tuples: ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) -> c15(ZWQUOT(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))) ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y1)))), z3)) -> c10(QUOT(s(s(s(s(y0)))), s(s(s(s(y1)))))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4)))), cons(z3, z4)) -> c11(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(s(y0))), y1), cons(s(s(s(y2))), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) -> c12(ACTIVATE(n__zWquot(cons(s(s(y0)), y1), cons(s(s(y2)), y3)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) -> c12(ACTIVATE(n__zWquot(cons(y0, n__zWquot(y1, y2)), cons(y3, y4)))) ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) -> c12(ACTIVATE(n__zWquot(cons(y0, y1), cons(y2, n__zWquot(y3, y4))))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) -> c15(ZWQUOT(cons(s(s(z0)), n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(s(s(z2)), z3))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(s(s(z0)), z1), cons(s(s(z2)), n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) -> c15(ZWQUOT(cons(s(s(s(y0))), n__zWquot(z1, z2)), cons(s(s(s(y2))), z4))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), n__zWquot(z1, z2)), cons(s(s(s(s(y2)))), z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z3, z4))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, n__zWquot(z1, z2)), cons(z3, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) ACTIVATE(n__zWquot(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(y0))), z1), cons(s(s(s(y2))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(s(s(s(s(y0)))), z1), cons(s(s(s(s(y2)))), n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(s(y1))), y2), cons(s(s(s(y3))), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(s(s(y1)), y2), cons(s(s(y3)), y4))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, n__zWquot(y2, y3)), cons(y4, y5))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) -> c15(ZWQUOT(cons(z0, n__zWquot(cons(y1, y2), cons(y3, n__zWquot(y4, y5)))), cons(z2, n__zWquot(z3, z4)))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(s(y3))), y4), cons(s(s(s(y5))), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(s(s(y3)), y4), cons(s(s(y5)), y6))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, n__zWquot(y4, y5)), cons(y6, y7))))) ACTIVATE(n__zWquot(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) -> c15(ZWQUOT(cons(z0, z1), cons(z2, n__zWquot(cons(y3, y4), cons(y5, n__zWquot(y6, y7)))))) QUOT(s(s(s(s(y0)))), s(s(s(s(y1))))) -> c7(MINUS(s(s(s(y0))), s(s(s(y1))))) Defined Rule Symbols: activate_1, from_1, zWquot_2, quot_2, minus_2 Defined Pair Symbols: SEL_2, ZWQUOT_2, ACTIVATE_1, MINUS_2, QUOT_2 Compound Symbols: c3_2, c10_1, c15_1, c3_1, c5_1, c11_1, c12_1, c7_2, c7_1 ---------------------------------------- (203) RelTrsToWeightedTrsProof (UPPER BOUND(ID)) Transformed relative TRS to weighted TRS ---------------------------------------- (204) 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: from(X) -> cons(X, n__from(s(X))) [1] sel(0, cons(X, XS)) -> X [1] sel(s(N), cons(X, XS)) -> sel(N, activate(XS)) [1] minus(X, 0) -> 0 [1] minus(s(X), s(Y)) -> minus(X, Y) [1] quot(0, s(Y)) -> 0 [1] quot(s(X), s(Y)) -> s(quot(minus(X, Y), s(Y))) [1] zWquot(XS, nil) -> nil [1] zWquot(nil, XS) -> nil [1] zWquot(cons(X, XS), cons(Y, YS)) -> cons(quot(X, Y), n__zWquot(activate(XS), activate(YS))) [1] from(X) -> n__from(X) [1] zWquot(X1, X2) -> n__zWquot(X1, X2) [1] activate(n__from(X)) -> from(X) [1] activate(n__zWquot(X1, X2)) -> zWquot(X1, X2) [1] activate(X) -> X [1] Rewrite Strategy: INNERMOST ---------------------------------------- (205) TypeInferenceProof (BOTH BOUNDS(ID, ID)) Infered types. ---------------------------------------- (206) Obligation: Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules: from(X) -> cons(X, n__from(s(X))) [1] sel(0, cons(X, XS)) -> X [1] sel(s(N), cons(X, XS)) -> sel(N, activate(XS)) [1] minus(X, 0) -> 0 [1] minus(s(X), s(Y)) -> minus(X, Y) [1] quot(0, s(Y)) -> 0 [1] quot(s(X), s(Y)) -> s(quot(minus(X, Y), s(Y))) [1] zWquot(XS, nil) -> nil [1] zWquot(nil, XS) -> nil [1] zWquot(cons(X, XS), cons(Y, YS)) -> cons(quot(X, Y), n__zWquot(activate(XS), activate(YS))) [1] from(X) -> n__from(X) [1] zWquot(X1, X2) -> n__zWquot(X1, X2) [1] activate(n__from(X)) -> from(X) [1] activate(n__zWquot(X1, X2)) -> zWquot(X1, X2) [1] activate(X) -> X [1] The TRS has the following type information: from :: s:0 -> n__from:cons:nil:n__zWquot cons :: s:0 -> n__from:cons:nil:n__zWquot -> n__from:cons:nil:n__zWquot n__from :: s:0 -> n__from:cons:nil:n__zWquot s :: s:0 -> s:0 sel :: s:0 -> n__from:cons:nil:n__zWquot -> s:0 0 :: s:0 activate :: n__from:cons:nil:n__zWquot -> n__from:cons:nil:n__zWquot minus :: s:0 -> s:0 -> s:0 quot :: s:0 -> s:0 -> s:0 zWquot :: n__from:cons:nil:n__zWquot -> n__from:cons:nil:n__zWquot -> n__from:cons:nil:n__zWquot nil :: n__from:cons:nil:n__zWquot n__zWquot :: n__from:cons:nil:n__zWquot -> n__from:cons:nil:n__zWquot -> n__from:cons:nil:n__zWquot Rewrite Strategy: INNERMOST ---------------------------------------- (207) 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: sel(v0, v1) -> null_sel [0] minus(v0, v1) -> null_minus [0] quot(v0, v1) -> null_quot [0] And the following fresh constants: null_sel, null_minus, null_quot ---------------------------------------- (208) 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: from(X) -> cons(X, n__from(s(X))) [1] sel(0, cons(X, XS)) -> X [1] sel(s(N), cons(X, XS)) -> sel(N, activate(XS)) [1] minus(X, 0) -> 0 [1] minus(s(X), s(Y)) -> minus(X, Y) [1] quot(0, s(Y)) -> 0 [1] quot(s(X), s(Y)) -> s(quot(minus(X, Y), s(Y))) [1] zWquot(XS, nil) -> nil [1] zWquot(nil, XS) -> nil [1] zWquot(cons(X, XS), cons(Y, YS)) -> cons(quot(X, Y), n__zWquot(activate(XS), activate(YS))) [1] from(X) -> n__from(X) [1] zWquot(X1, X2) -> n__zWquot(X1, X2) [1] activate(n__from(X)) -> from(X) [1] activate(n__zWquot(X1, X2)) -> zWquot(X1, X2) [1] activate(X) -> X [1] sel(v0, v1) -> null_sel [0] minus(v0, v1) -> null_minus [0] quot(v0, v1) -> null_quot [0] The TRS has the following type information: from :: s:0:null_sel:null_minus:null_quot -> n__from:cons:nil:n__zWquot cons :: s:0:null_sel:null_minus:null_quot -> n__from:cons:nil:n__zWquot -> n__from:cons:nil:n__zWquot n__from :: s:0:null_sel:null_minus:null_quot -> n__from:cons:nil:n__zWquot s :: s:0:null_sel:null_minus:null_quot -> s:0:null_sel:null_minus:null_quot sel :: s:0:null_sel:null_minus:null_quot -> n__from:cons:nil:n__zWquot -> s:0:null_sel:null_minus:null_quot 0 :: s:0:null_sel:null_minus:null_quot activate :: n__from:cons:nil:n__zWquot -> n__from:cons:nil:n__zWquot minus :: s:0:null_sel:null_minus:null_quot -> s:0:null_sel:null_minus:null_quot -> s:0:null_sel:null_minus:null_quot quot :: s:0:null_sel:null_minus:null_quot -> s:0:null_sel:null_minus:null_quot -> s:0:null_sel:null_minus:null_quot zWquot :: n__from:cons:nil:n__zWquot -> n__from:cons:nil:n__zWquot -> n__from:cons:nil:n__zWquot nil :: n__from:cons:nil:n__zWquot n__zWquot :: n__from:cons:nil:n__zWquot -> n__from:cons:nil:n__zWquot -> n__from:cons:nil:n__zWquot null_sel :: s:0:null_sel:null_minus:null_quot null_minus :: s:0:null_sel:null_minus:null_quot null_quot :: s:0:null_sel:null_minus:null_quot Rewrite Strategy: INNERMOST ---------------------------------------- (209) CpxTypedWeightedTrsToRntsProof (UPPER BOUND(ID)) Transformed the TRS into an over-approximating RNTS by (improved) Size Abstraction. The constant constructors are abstracted as follows: 0 => 0 nil => 0 null_sel => 0 null_minus => 0 null_quot => 0 ---------------------------------------- (210) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> X :|: X >= 0, z = X activate(z) -{ 1 }-> zWquot(X1, X2) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 activate(z) -{ 1 }-> from(X) :|: z = 1 + X, X >= 0 from(z) -{ 1 }-> 1 + X :|: X >= 0, z = X from(z) -{ 1 }-> 1 + X + (1 + (1 + X)) :|: X >= 0, z = X minus(z, z') -{ 1 }-> minus(X, Y) :|: z = 1 + X, Y >= 0, z' = 1 + Y, X >= 0 minus(z, z') -{ 1 }-> 0 :|: X >= 0, z = X, z' = 0 minus(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 quot(z, z') -{ 1 }-> 0 :|: Y >= 0, z' = 1 + Y, z = 0 quot(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 quot(z, z') -{ 1 }-> 1 + quot(minus(X, Y), 1 + Y) :|: z = 1 + X, Y >= 0, z' = 1 + Y, X >= 0 sel(z, z') -{ 1 }-> X :|: z' = 1 + X + XS, X >= 0, z = 0, XS >= 0 sel(z, z') -{ 1 }-> sel(N, activate(XS)) :|: z = 1 + N, z' = 1 + X + XS, X >= 0, XS >= 0, N >= 0 sel(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 zWquot(z, z') -{ 1 }-> 0 :|: z = XS, XS >= 0, z' = 0 zWquot(z, z') -{ 1 }-> 0 :|: z' = XS, z = 0, XS >= 0 zWquot(z, z') -{ 1 }-> 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, z = X1, z' = X2 zWquot(z, z') -{ 1 }-> 1 + quot(X, Y) + (1 + activate(XS) + activate(YS)) :|: z = 1 + X + XS, Y >= 0, X >= 0, YS >= 0, z' = 1 + Y + YS, XS >= 0 Only complete derivations are relevant for the runtime complexity. ---------------------------------------- (211) 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: sel_2 (c) The following functions are completely defined: minus_2 activate_1 from_1 zWquot_2 quot_2 Due to the following rules being added: minus(v0, v1) -> 0 [0] quot(v0, v1) -> 0 [0] And the following fresh constants: none ---------------------------------------- (212) 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: from(X) -> cons(X, n__from(s(X))) [1] sel(0, cons(X, XS)) -> X [1] sel(s(N), cons(X, XS)) -> sel(N, activate(XS)) [1] minus(X, 0) -> 0 [1] minus(s(X), s(Y)) -> minus(X, Y) [1] quot(0, s(Y)) -> 0 [1] quot(s(X), s(Y)) -> s(quot(minus(X, Y), s(Y))) [1] zWquot(XS, nil) -> nil [1] zWquot(nil, XS) -> nil [1] zWquot(cons(X, XS), cons(Y, YS)) -> cons(quot(X, Y), n__zWquot(activate(XS), activate(YS))) [1] from(X) -> n__from(X) [1] zWquot(X1, X2) -> n__zWquot(X1, X2) [1] activate(n__from(X)) -> from(X) [1] activate(n__zWquot(X1, X2)) -> zWquot(X1, X2) [1] activate(X) -> X [1] minus(v0, v1) -> 0 [0] quot(v0, v1) -> 0 [0] The TRS has the following type information: from :: s:0 -> n__from:cons:nil:n__zWquot cons :: s:0 -> n__from:cons:nil:n__zWquot -> n__from:cons:nil:n__zWquot n__from :: s:0 -> n__from:cons:nil:n__zWquot s :: s:0 -> s:0 sel :: s:0 -> n__from:cons:nil:n__zWquot -> s:0 0 :: s:0 activate :: n__from:cons:nil:n__zWquot -> n__from:cons:nil:n__zWquot minus :: s:0 -> s:0 -> s:0 quot :: s:0 -> s:0 -> s:0 zWquot :: n__from:cons:nil:n__zWquot -> n__from:cons:nil:n__zWquot -> n__from:cons:nil:n__zWquot nil :: n__from:cons:nil:n__zWquot n__zWquot :: n__from:cons:nil:n__zWquot -> n__from:cons:nil:n__zWquot -> n__from:cons:nil:n__zWquot Rewrite Strategy: INNERMOST ---------------------------------------- (213) NarrowingProof (BOTH BOUNDS(ID, ID)) Narrowed the inner basic terms of all right-hand sides by a single narrowing step. ---------------------------------------- (214) 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: from(X) -> cons(X, n__from(s(X))) [1] sel(0, cons(X, XS)) -> X [1] sel(s(N), cons(X, n__from(X'))) -> sel(N, from(X')) [2] sel(s(N), cons(X, n__zWquot(X1', X2'))) -> sel(N, zWquot(X1', X2')) [2] sel(s(N), cons(X, XS)) -> sel(N, XS) [2] minus(X, 0) -> 0 [1] minus(s(X), s(Y)) -> minus(X, Y) [1] quot(0, s(Y)) -> 0 [1] quot(s(X), s(0)) -> s(quot(0, s(0))) [2] quot(s(s(X'')), s(s(Y'))) -> s(quot(minus(X'', Y'), s(s(Y')))) [2] quot(s(X), s(Y)) -> s(quot(0, s(Y))) [1] zWquot(XS, nil) -> nil [1] zWquot(nil, XS) -> nil [1] zWquot(cons(X, XS), cons(Y, YS)) -> cons(quot(X, Y), n__zWquot(activate(XS), activate(YS))) [1] from(X) -> n__from(X) [1] zWquot(X1, X2) -> n__zWquot(X1, X2) [1] activate(n__from(X)) -> from(X) [1] activate(n__zWquot(X1, X2)) -> zWquot(X1, X2) [1] activate(X) -> X [1] minus(v0, v1) -> 0 [0] quot(v0, v1) -> 0 [0] The TRS has the following type information: from :: s:0 -> n__from:cons:nil:n__zWquot cons :: s:0 -> n__from:cons:nil:n__zWquot -> n__from:cons:nil:n__zWquot n__from :: s:0 -> n__from:cons:nil:n__zWquot s :: s:0 -> s:0 sel :: s:0 -> n__from:cons:nil:n__zWquot -> s:0 0 :: s:0 activate :: n__from:cons:nil:n__zWquot -> n__from:cons:nil:n__zWquot minus :: s:0 -> s:0 -> s:0 quot :: s:0 -> s:0 -> s:0 zWquot :: n__from:cons:nil:n__zWquot -> n__from:cons:nil:n__zWquot -> n__from:cons:nil:n__zWquot nil :: n__from:cons:nil:n__zWquot n__zWquot :: n__from:cons:nil:n__zWquot -> n__from:cons:nil:n__zWquot -> n__from:cons:nil:n__zWquot Rewrite Strategy: INNERMOST ---------------------------------------- (215) CpxTypedWeightedTrsToRntsProof (UPPER BOUND(ID)) Transformed the TRS into an over-approximating RNTS by (improved) Size Abstraction. The constant constructors are abstracted as follows: 0 => 0 nil => 0 ---------------------------------------- (216) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> X :|: X >= 0, z = X activate(z) -{ 1 }-> zWquot(X1, X2) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 activate(z) -{ 1 }-> from(X) :|: z = 1 + X, X >= 0 from(z) -{ 1 }-> 1 + X :|: X >= 0, z = X from(z) -{ 1 }-> 1 + X + (1 + (1 + X)) :|: X >= 0, z = X minus(z, z') -{ 1 }-> minus(X, Y) :|: z = 1 + X, Y >= 0, z' = 1 + Y, X >= 0 minus(z, z') -{ 1 }-> 0 :|: X >= 0, z = X, z' = 0 minus(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 quot(z, z') -{ 1 }-> 0 :|: Y >= 0, z' = 1 + Y, z = 0 quot(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 quot(z, z') -{ 2 }-> 1 + quot(minus(X'', Y'), 1 + (1 + Y')) :|: z' = 1 + (1 + Y'), Y' >= 0, z = 1 + (1 + X''), X'' >= 0 quot(z, z') -{ 1 }-> 1 + quot(0, 1 + Y) :|: z = 1 + X, Y >= 0, z' = 1 + Y, X >= 0 quot(z, z') -{ 2 }-> 1 + quot(0, 1 + 0) :|: z = 1 + X, X >= 0, z' = 1 + 0 sel(z, z') -{ 1 }-> X :|: z' = 1 + X + XS, X >= 0, z = 0, XS >= 0 sel(z, z') -{ 2 }-> sel(N, XS) :|: z = 1 + N, z' = 1 + X + XS, X >= 0, XS >= 0, N >= 0 sel(z, z') -{ 2 }-> sel(N, zWquot(X1', X2')) :|: X2' >= 0, X1' >= 0, z = 1 + N, X >= 0, z' = 1 + X + (1 + X1' + X2'), N >= 0 sel(z, z') -{ 2 }-> sel(N, from(X')) :|: z = 1 + N, z' = 1 + X + (1 + X'), X >= 0, X' >= 0, N >= 0 zWquot(z, z') -{ 1 }-> 0 :|: z = XS, XS >= 0, z' = 0 zWquot(z, z') -{ 1 }-> 0 :|: z' = XS, z = 0, XS >= 0 zWquot(z, z') -{ 1 }-> 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, z = X1, z' = X2 zWquot(z, z') -{ 1 }-> 1 + quot(X, Y) + (1 + activate(XS) + activate(YS)) :|: z = 1 + X + XS, Y >= 0, X >= 0, YS >= 0, z' = 1 + Y + YS, XS >= 0 ---------------------------------------- (217) InliningProof (UPPER BOUND(ID)) Inlined the following terminating rules on right-hand sides where appropriate: from(z) -{ 1 }-> 1 + X :|: X >= 0, z = X from(z) -{ 1 }-> 1 + X + (1 + (1 + X)) :|: X >= 0, z = X ---------------------------------------- (218) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> X :|: X >= 0, z = X activate(z) -{ 1 }-> zWquot(X1, X2) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 activate(z) -{ 2 }-> 1 + X' :|: z = 1 + X, X >= 0, X' >= 0, X = X' activate(z) -{ 2 }-> 1 + X' + (1 + (1 + X')) :|: z = 1 + X, X >= 0, X' >= 0, X = X' from(z) -{ 1 }-> 1 + X :|: X >= 0, z = X from(z) -{ 1 }-> 1 + X + (1 + (1 + X)) :|: X >= 0, z = X minus(z, z') -{ 1 }-> minus(X, Y) :|: z = 1 + X, Y >= 0, z' = 1 + Y, X >= 0 minus(z, z') -{ 1 }-> 0 :|: X >= 0, z = X, z' = 0 minus(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 quot(z, z') -{ 1 }-> 0 :|: Y >= 0, z' = 1 + Y, z = 0 quot(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 quot(z, z') -{ 2 }-> 1 + quot(minus(X'', Y'), 1 + (1 + Y')) :|: z' = 1 + (1 + Y'), Y' >= 0, z = 1 + (1 + X''), X'' >= 0 quot(z, z') -{ 1 }-> 1 + quot(0, 1 + Y) :|: z = 1 + X, Y >= 0, z' = 1 + Y, X >= 0 quot(z, z') -{ 2 }-> 1 + quot(0, 1 + 0) :|: z = 1 + X, X >= 0, z' = 1 + 0 sel(z, z') -{ 1 }-> X :|: z' = 1 + X + XS, X >= 0, z = 0, XS >= 0 sel(z, z') -{ 2 }-> sel(N, XS) :|: z = 1 + N, z' = 1 + X + XS, X >= 0, XS >= 0, N >= 0 sel(z, z') -{ 2 }-> sel(N, zWquot(X1', X2')) :|: X2' >= 0, X1' >= 0, z = 1 + N, X >= 0, z' = 1 + X + (1 + X1' + X2'), N >= 0 sel(z, z') -{ 3 }-> sel(N, 1 + X'') :|: z = 1 + N, z' = 1 + X + (1 + X'), X >= 0, X' >= 0, N >= 0, X'' >= 0, X' = X'' sel(z, z') -{ 3 }-> sel(N, 1 + X'' + (1 + (1 + X''))) :|: z = 1 + N, z' = 1 + X + (1 + X'), X >= 0, X' >= 0, N >= 0, X'' >= 0, X' = X'' zWquot(z, z') -{ 1 }-> 0 :|: z = XS, XS >= 0, z' = 0 zWquot(z, z') -{ 1 }-> 0 :|: z' = XS, z = 0, XS >= 0 zWquot(z, z') -{ 1 }-> 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, z = X1, z' = X2 zWquot(z, z') -{ 1 }-> 1 + quot(X, Y) + (1 + activate(XS) + activate(YS)) :|: z = 1 + X + XS, Y >= 0, X >= 0, YS >= 0, z' = 1 + Y + YS, XS >= 0 ---------------------------------------- (219) SimplificationProof (BOTH BOUNDS(ID, ID)) Simplified the RNTS by moving equalities from the constraints into the right-hand sides. ---------------------------------------- (220) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 1 }-> zWquot(X1, X2) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' activate(z) -{ 2 }-> 1 + X' + (1 + (1 + X')) :|: z - 1 >= 0, X' >= 0, z - 1 = X' from(z) -{ 1 }-> 1 + z :|: z >= 0 from(z) -{ 1 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 1 }-> minus(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 1 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 2 }-> 1 + quot(minus(z - 2, z' - 2), 1 + (1 + (z' - 2))) :|: z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 2 }-> 1 + quot(0, 1 + 0) :|: z - 1 >= 0, z' = 1 + 0 quot(z, z') -{ 1 }-> 1 + quot(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 sel(z, z') -{ 1 }-> X :|: z' = 1 + X + XS, X >= 0, z = 0, XS >= 0 sel(z, z') -{ 2 }-> sel(z - 1, XS) :|: z' = 1 + X + XS, X >= 0, XS >= 0, z - 1 >= 0 sel(z, z') -{ 2 }-> sel(z - 1, zWquot(X1', X2')) :|: X2' >= 0, X1' >= 0, X >= 0, z' = 1 + X + (1 + X1' + X2'), z - 1 >= 0 sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'') :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'' + (1 + (1 + X''))) :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' zWquot(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 1 }-> 0 :|: z = 0, z' >= 0 zWquot(z, z') -{ 1 }-> 1 + z + z' :|: z >= 0, z' >= 0 zWquot(z, z') -{ 1 }-> 1 + quot(X, Y) + (1 + activate(XS) + activate(YS)) :|: z = 1 + X + XS, Y >= 0, X >= 0, YS >= 0, z' = 1 + Y + YS, XS >= 0 ---------------------------------------- (221) CpxRntsAnalysisOrderProof (BOTH BOUNDS(ID, ID)) Found the following analysis order by SCC decomposition: { from } { minus } { quot } { zWquot, activate } { sel } ---------------------------------------- (222) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 1 }-> zWquot(X1, X2) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' activate(z) -{ 2 }-> 1 + X' + (1 + (1 + X')) :|: z - 1 >= 0, X' >= 0, z - 1 = X' from(z) -{ 1 }-> 1 + z :|: z >= 0 from(z) -{ 1 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 1 }-> minus(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 1 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 2 }-> 1 + quot(minus(z - 2, z' - 2), 1 + (1 + (z' - 2))) :|: z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 2 }-> 1 + quot(0, 1 + 0) :|: z - 1 >= 0, z' = 1 + 0 quot(z, z') -{ 1 }-> 1 + quot(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 sel(z, z') -{ 1 }-> X :|: z' = 1 + X + XS, X >= 0, z = 0, XS >= 0 sel(z, z') -{ 2 }-> sel(z - 1, XS) :|: z' = 1 + X + XS, X >= 0, XS >= 0, z - 1 >= 0 sel(z, z') -{ 2 }-> sel(z - 1, zWquot(X1', X2')) :|: X2' >= 0, X1' >= 0, X >= 0, z' = 1 + X + (1 + X1' + X2'), z - 1 >= 0 sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'') :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'' + (1 + (1 + X''))) :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' zWquot(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 1 }-> 0 :|: z = 0, z' >= 0 zWquot(z, z') -{ 1 }-> 1 + z + z' :|: z >= 0, z' >= 0 zWquot(z, z') -{ 1 }-> 1 + quot(X, Y) + (1 + activate(XS) + activate(YS)) :|: z = 1 + X + XS, Y >= 0, X >= 0, YS >= 0, z' = 1 + Y + YS, XS >= 0 Function symbols to be analyzed: {from}, {minus}, {quot}, {zWquot,activate}, {sel} ---------------------------------------- (223) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (224) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 1 }-> zWquot(X1, X2) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' activate(z) -{ 2 }-> 1 + X' + (1 + (1 + X')) :|: z - 1 >= 0, X' >= 0, z - 1 = X' from(z) -{ 1 }-> 1 + z :|: z >= 0 from(z) -{ 1 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 1 }-> minus(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 1 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 2 }-> 1 + quot(minus(z - 2, z' - 2), 1 + (1 + (z' - 2))) :|: z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 2 }-> 1 + quot(0, 1 + 0) :|: z - 1 >= 0, z' = 1 + 0 quot(z, z') -{ 1 }-> 1 + quot(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 sel(z, z') -{ 1 }-> X :|: z' = 1 + X + XS, X >= 0, z = 0, XS >= 0 sel(z, z') -{ 2 }-> sel(z - 1, XS) :|: z' = 1 + X + XS, X >= 0, XS >= 0, z - 1 >= 0 sel(z, z') -{ 2 }-> sel(z - 1, zWquot(X1', X2')) :|: X2' >= 0, X1' >= 0, X >= 0, z' = 1 + X + (1 + X1' + X2'), z - 1 >= 0 sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'') :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'' + (1 + (1 + X''))) :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' zWquot(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 1 }-> 0 :|: z = 0, z' >= 0 zWquot(z, z') -{ 1 }-> 1 + z + z' :|: z >= 0, z' >= 0 zWquot(z, z') -{ 1 }-> 1 + quot(X, Y) + (1 + activate(XS) + activate(YS)) :|: z = 1 + X + XS, Y >= 0, X >= 0, YS >= 0, z' = 1 + Y + YS, XS >= 0 Function symbols to be analyzed: {from}, {minus}, {quot}, {zWquot,activate}, {sel} ---------------------------------------- (225) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: from after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 3 + 2*z ---------------------------------------- (226) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 1 }-> zWquot(X1, X2) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' activate(z) -{ 2 }-> 1 + X' + (1 + (1 + X')) :|: z - 1 >= 0, X' >= 0, z - 1 = X' from(z) -{ 1 }-> 1 + z :|: z >= 0 from(z) -{ 1 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 1 }-> minus(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 1 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 2 }-> 1 + quot(minus(z - 2, z' - 2), 1 + (1 + (z' - 2))) :|: z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 2 }-> 1 + quot(0, 1 + 0) :|: z - 1 >= 0, z' = 1 + 0 quot(z, z') -{ 1 }-> 1 + quot(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 sel(z, z') -{ 1 }-> X :|: z' = 1 + X + XS, X >= 0, z = 0, XS >= 0 sel(z, z') -{ 2 }-> sel(z - 1, XS) :|: z' = 1 + X + XS, X >= 0, XS >= 0, z - 1 >= 0 sel(z, z') -{ 2 }-> sel(z - 1, zWquot(X1', X2')) :|: X2' >= 0, X1' >= 0, X >= 0, z' = 1 + X + (1 + X1' + X2'), z - 1 >= 0 sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'') :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'' + (1 + (1 + X''))) :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' zWquot(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 1 }-> 0 :|: z = 0, z' >= 0 zWquot(z, z') -{ 1 }-> 1 + z + z' :|: z >= 0, z' >= 0 zWquot(z, z') -{ 1 }-> 1 + quot(X, Y) + (1 + activate(XS) + activate(YS)) :|: z = 1 + X + XS, Y >= 0, X >= 0, YS >= 0, z' = 1 + Y + YS, XS >= 0 Function symbols to be analyzed: {from}, {minus}, {quot}, {zWquot,activate}, {sel} Previous analysis results are: from: runtime: ?, size: O(n^1) [3 + 2*z] ---------------------------------------- (227) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: from after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 1 ---------------------------------------- (228) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 1 }-> zWquot(X1, X2) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' activate(z) -{ 2 }-> 1 + X' + (1 + (1 + X')) :|: z - 1 >= 0, X' >= 0, z - 1 = X' from(z) -{ 1 }-> 1 + z :|: z >= 0 from(z) -{ 1 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 1 }-> minus(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 1 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 2 }-> 1 + quot(minus(z - 2, z' - 2), 1 + (1 + (z' - 2))) :|: z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 2 }-> 1 + quot(0, 1 + 0) :|: z - 1 >= 0, z' = 1 + 0 quot(z, z') -{ 1 }-> 1 + quot(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 sel(z, z') -{ 1 }-> X :|: z' = 1 + X + XS, X >= 0, z = 0, XS >= 0 sel(z, z') -{ 2 }-> sel(z - 1, XS) :|: z' = 1 + X + XS, X >= 0, XS >= 0, z - 1 >= 0 sel(z, z') -{ 2 }-> sel(z - 1, zWquot(X1', X2')) :|: X2' >= 0, X1' >= 0, X >= 0, z' = 1 + X + (1 + X1' + X2'), z - 1 >= 0 sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'') :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'' + (1 + (1 + X''))) :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' zWquot(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 1 }-> 0 :|: z = 0, z' >= 0 zWquot(z, z') -{ 1 }-> 1 + z + z' :|: z >= 0, z' >= 0 zWquot(z, z') -{ 1 }-> 1 + quot(X, Y) + (1 + activate(XS) + activate(YS)) :|: z = 1 + X + XS, Y >= 0, X >= 0, YS >= 0, z' = 1 + Y + YS, XS >= 0 Function symbols to be analyzed: {minus}, {quot}, {zWquot,activate}, {sel} Previous analysis results are: from: runtime: O(1) [1], size: O(n^1) [3 + 2*z] ---------------------------------------- (229) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (230) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 1 }-> zWquot(X1, X2) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' activate(z) -{ 2 }-> 1 + X' + (1 + (1 + X')) :|: z - 1 >= 0, X' >= 0, z - 1 = X' from(z) -{ 1 }-> 1 + z :|: z >= 0 from(z) -{ 1 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 1 }-> minus(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 1 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 2 }-> 1 + quot(minus(z - 2, z' - 2), 1 + (1 + (z' - 2))) :|: z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 2 }-> 1 + quot(0, 1 + 0) :|: z - 1 >= 0, z' = 1 + 0 quot(z, z') -{ 1 }-> 1 + quot(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 sel(z, z') -{ 1 }-> X :|: z' = 1 + X + XS, X >= 0, z = 0, XS >= 0 sel(z, z') -{ 2 }-> sel(z - 1, XS) :|: z' = 1 + X + XS, X >= 0, XS >= 0, z - 1 >= 0 sel(z, z') -{ 2 }-> sel(z - 1, zWquot(X1', X2')) :|: X2' >= 0, X1' >= 0, X >= 0, z' = 1 + X + (1 + X1' + X2'), z - 1 >= 0 sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'') :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'' + (1 + (1 + X''))) :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' zWquot(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 1 }-> 0 :|: z = 0, z' >= 0 zWquot(z, z') -{ 1 }-> 1 + z + z' :|: z >= 0, z' >= 0 zWquot(z, z') -{ 1 }-> 1 + quot(X, Y) + (1 + activate(XS) + activate(YS)) :|: z = 1 + X + XS, Y >= 0, X >= 0, YS >= 0, z' = 1 + Y + YS, XS >= 0 Function symbols to be analyzed: {minus}, {quot}, {zWquot,activate}, {sel} Previous analysis results are: from: runtime: O(1) [1], size: O(n^1) [3 + 2*z] ---------------------------------------- (231) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: minus after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (232) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 1 }-> zWquot(X1, X2) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' activate(z) -{ 2 }-> 1 + X' + (1 + (1 + X')) :|: z - 1 >= 0, X' >= 0, z - 1 = X' from(z) -{ 1 }-> 1 + z :|: z >= 0 from(z) -{ 1 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 1 }-> minus(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 1 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 2 }-> 1 + quot(minus(z - 2, z' - 2), 1 + (1 + (z' - 2))) :|: z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 2 }-> 1 + quot(0, 1 + 0) :|: z - 1 >= 0, z' = 1 + 0 quot(z, z') -{ 1 }-> 1 + quot(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 sel(z, z') -{ 1 }-> X :|: z' = 1 + X + XS, X >= 0, z = 0, XS >= 0 sel(z, z') -{ 2 }-> sel(z - 1, XS) :|: z' = 1 + X + XS, X >= 0, XS >= 0, z - 1 >= 0 sel(z, z') -{ 2 }-> sel(z - 1, zWquot(X1', X2')) :|: X2' >= 0, X1' >= 0, X >= 0, z' = 1 + X + (1 + X1' + X2'), z - 1 >= 0 sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'') :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'' + (1 + (1 + X''))) :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' zWquot(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 1 }-> 0 :|: z = 0, z' >= 0 zWquot(z, z') -{ 1 }-> 1 + z + z' :|: z >= 0, z' >= 0 zWquot(z, z') -{ 1 }-> 1 + quot(X, Y) + (1 + activate(XS) + activate(YS)) :|: z = 1 + X + XS, Y >= 0, X >= 0, YS >= 0, z' = 1 + Y + YS, XS >= 0 Function symbols to be analyzed: {minus}, {quot}, {zWquot,activate}, {sel} Previous analysis results are: from: runtime: O(1) [1], size: O(n^1) [3 + 2*z] minus: runtime: ?, size: O(1) [0] ---------------------------------------- (233) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: minus after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 1 + z' ---------------------------------------- (234) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 1 }-> zWquot(X1, X2) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' activate(z) -{ 2 }-> 1 + X' + (1 + (1 + X')) :|: z - 1 >= 0, X' >= 0, z - 1 = X' from(z) -{ 1 }-> 1 + z :|: z >= 0 from(z) -{ 1 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 1 }-> minus(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 1 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 2 }-> 1 + quot(minus(z - 2, z' - 2), 1 + (1 + (z' - 2))) :|: z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 2 }-> 1 + quot(0, 1 + 0) :|: z - 1 >= 0, z' = 1 + 0 quot(z, z') -{ 1 }-> 1 + quot(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 sel(z, z') -{ 1 }-> X :|: z' = 1 + X + XS, X >= 0, z = 0, XS >= 0 sel(z, z') -{ 2 }-> sel(z - 1, XS) :|: z' = 1 + X + XS, X >= 0, XS >= 0, z - 1 >= 0 sel(z, z') -{ 2 }-> sel(z - 1, zWquot(X1', X2')) :|: X2' >= 0, X1' >= 0, X >= 0, z' = 1 + X + (1 + X1' + X2'), z - 1 >= 0 sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'') :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'' + (1 + (1 + X''))) :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' zWquot(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 1 }-> 0 :|: z = 0, z' >= 0 zWquot(z, z') -{ 1 }-> 1 + z + z' :|: z >= 0, z' >= 0 zWquot(z, z') -{ 1 }-> 1 + quot(X, Y) + (1 + activate(XS) + activate(YS)) :|: z = 1 + X + XS, Y >= 0, X >= 0, YS >= 0, z' = 1 + Y + YS, XS >= 0 Function symbols to be analyzed: {quot}, {zWquot,activate}, {sel} Previous analysis results are: from: runtime: O(1) [1], size: O(n^1) [3 + 2*z] minus: runtime: O(n^1) [1 + z'], size: O(1) [0] ---------------------------------------- (235) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (236) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 1 }-> zWquot(X1, X2) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' activate(z) -{ 2 }-> 1 + X' + (1 + (1 + X')) :|: z - 1 >= 0, X' >= 0, z - 1 = X' from(z) -{ 1 }-> 1 + z :|: z >= 0 from(z) -{ 1 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 1 + z' }-> s :|: s >= 0, s <= 0, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 1 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 1 + z' }-> 1 + quot(s', 1 + (1 + (z' - 2))) :|: s' >= 0, s' <= 0, z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 2 }-> 1 + quot(0, 1 + 0) :|: z - 1 >= 0, z' = 1 + 0 quot(z, z') -{ 1 }-> 1 + quot(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 sel(z, z') -{ 1 }-> X :|: z' = 1 + X + XS, X >= 0, z = 0, XS >= 0 sel(z, z') -{ 2 }-> sel(z - 1, XS) :|: z' = 1 + X + XS, X >= 0, XS >= 0, z - 1 >= 0 sel(z, z') -{ 2 }-> sel(z - 1, zWquot(X1', X2')) :|: X2' >= 0, X1' >= 0, X >= 0, z' = 1 + X + (1 + X1' + X2'), z - 1 >= 0 sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'') :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'' + (1 + (1 + X''))) :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' zWquot(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 1 }-> 0 :|: z = 0, z' >= 0 zWquot(z, z') -{ 1 }-> 1 + z + z' :|: z >= 0, z' >= 0 zWquot(z, z') -{ 1 }-> 1 + quot(X, Y) + (1 + activate(XS) + activate(YS)) :|: z = 1 + X + XS, Y >= 0, X >= 0, YS >= 0, z' = 1 + Y + YS, XS >= 0 Function symbols to be analyzed: {quot}, {zWquot,activate}, {sel} Previous analysis results are: from: runtime: O(1) [1], size: O(n^1) [3 + 2*z] minus: runtime: O(n^1) [1 + z'], size: O(1) [0] ---------------------------------------- (237) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: quot after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 1 ---------------------------------------- (238) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 1 }-> zWquot(X1, X2) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' activate(z) -{ 2 }-> 1 + X' + (1 + (1 + X')) :|: z - 1 >= 0, X' >= 0, z - 1 = X' from(z) -{ 1 }-> 1 + z :|: z >= 0 from(z) -{ 1 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 1 + z' }-> s :|: s >= 0, s <= 0, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 1 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 1 + z' }-> 1 + quot(s', 1 + (1 + (z' - 2))) :|: s' >= 0, s' <= 0, z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 2 }-> 1 + quot(0, 1 + 0) :|: z - 1 >= 0, z' = 1 + 0 quot(z, z') -{ 1 }-> 1 + quot(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 sel(z, z') -{ 1 }-> X :|: z' = 1 + X + XS, X >= 0, z = 0, XS >= 0 sel(z, z') -{ 2 }-> sel(z - 1, XS) :|: z' = 1 + X + XS, X >= 0, XS >= 0, z - 1 >= 0 sel(z, z') -{ 2 }-> sel(z - 1, zWquot(X1', X2')) :|: X2' >= 0, X1' >= 0, X >= 0, z' = 1 + X + (1 + X1' + X2'), z - 1 >= 0 sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'') :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'' + (1 + (1 + X''))) :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' zWquot(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 1 }-> 0 :|: z = 0, z' >= 0 zWquot(z, z') -{ 1 }-> 1 + z + z' :|: z >= 0, z' >= 0 zWquot(z, z') -{ 1 }-> 1 + quot(X, Y) + (1 + activate(XS) + activate(YS)) :|: z = 1 + X + XS, Y >= 0, X >= 0, YS >= 0, z' = 1 + Y + YS, XS >= 0 Function symbols to be analyzed: {quot}, {zWquot,activate}, {sel} Previous analysis results are: from: runtime: O(1) [1], size: O(n^1) [3 + 2*z] minus: runtime: O(n^1) [1 + z'], size: O(1) [0] quot: runtime: ?, size: O(1) [1] ---------------------------------------- (239) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: quot after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 3 + z' ---------------------------------------- (240) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 1 }-> zWquot(X1, X2) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' activate(z) -{ 2 }-> 1 + X' + (1 + (1 + X')) :|: z - 1 >= 0, X' >= 0, z - 1 = X' from(z) -{ 1 }-> 1 + z :|: z >= 0 from(z) -{ 1 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 1 + z' }-> s :|: s >= 0, s <= 0, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 1 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 1 + z' }-> 1 + quot(s', 1 + (1 + (z' - 2))) :|: s' >= 0, s' <= 0, z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 2 }-> 1 + quot(0, 1 + 0) :|: z - 1 >= 0, z' = 1 + 0 quot(z, z') -{ 1 }-> 1 + quot(0, 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 sel(z, z') -{ 1 }-> X :|: z' = 1 + X + XS, X >= 0, z = 0, XS >= 0 sel(z, z') -{ 2 }-> sel(z - 1, XS) :|: z' = 1 + X + XS, X >= 0, XS >= 0, z - 1 >= 0 sel(z, z') -{ 2 }-> sel(z - 1, zWquot(X1', X2')) :|: X2' >= 0, X1' >= 0, X >= 0, z' = 1 + X + (1 + X1' + X2'), z - 1 >= 0 sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'') :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'' + (1 + (1 + X''))) :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' zWquot(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 1 }-> 0 :|: z = 0, z' >= 0 zWquot(z, z') -{ 1 }-> 1 + z + z' :|: z >= 0, z' >= 0 zWquot(z, z') -{ 1 }-> 1 + quot(X, Y) + (1 + activate(XS) + activate(YS)) :|: z = 1 + X + XS, Y >= 0, X >= 0, YS >= 0, z' = 1 + Y + YS, XS >= 0 Function symbols to be analyzed: {zWquot,activate}, {sel} Previous analysis results are: from: runtime: O(1) [1], size: O(n^1) [3 + 2*z] minus: runtime: O(n^1) [1 + z'], size: O(1) [0] quot: runtime: O(n^1) [3 + z'], size: O(1) [1] ---------------------------------------- (241) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (242) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 1 }-> zWquot(X1, X2) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' activate(z) -{ 2 }-> 1 + X' + (1 + (1 + X')) :|: z - 1 >= 0, X' >= 0, z - 1 = X' from(z) -{ 1 }-> 1 + z :|: z >= 0 from(z) -{ 1 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 1 + z' }-> s :|: s >= 0, s <= 0, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 1 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 6 }-> 1 + s'' :|: s'' >= 0, s'' <= 1, z - 1 >= 0, z' = 1 + 0 quot(z, z') -{ 4 + 2*z' }-> 1 + s1 :|: s1 >= 0, s1 <= 1, s' >= 0, s' <= 0, z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 4 + z' }-> 1 + s2 :|: s2 >= 0, s2 <= 1, z' - 1 >= 0, z - 1 >= 0 sel(z, z') -{ 1 }-> X :|: z' = 1 + X + XS, X >= 0, z = 0, XS >= 0 sel(z, z') -{ 2 }-> sel(z - 1, XS) :|: z' = 1 + X + XS, X >= 0, XS >= 0, z - 1 >= 0 sel(z, z') -{ 2 }-> sel(z - 1, zWquot(X1', X2')) :|: X2' >= 0, X1' >= 0, X >= 0, z' = 1 + X + (1 + X1' + X2'), z - 1 >= 0 sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'') :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'' + (1 + (1 + X''))) :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' zWquot(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 1 }-> 0 :|: z = 0, z' >= 0 zWquot(z, z') -{ 4 + Y }-> 1 + s3 + (1 + activate(XS) + activate(YS)) :|: s3 >= 0, s3 <= 1, z = 1 + X + XS, Y >= 0, X >= 0, YS >= 0, z' = 1 + Y + YS, XS >= 0 zWquot(z, z') -{ 1 }-> 1 + z + z' :|: z >= 0, z' >= 0 Function symbols to be analyzed: {zWquot,activate}, {sel} Previous analysis results are: from: runtime: O(1) [1], size: O(n^1) [3 + 2*z] minus: runtime: O(n^1) [1 + z'], size: O(1) [0] quot: runtime: O(n^1) [3 + z'], size: O(1) [1] ---------------------------------------- (243) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using KoAT for: zWquot after applying outer abstraction to obtain an ITS, resulting in: O(n^2) with polynomial bound: 8 + 14*z + 12*z*z' + 6*z^2 + 14*z' + 6*z'^2 Computed SIZE bound using KoAT for: activate after applying outer abstraction to obtain an ITS, resulting in: O(n^2) with polynomial bound: 12 + 32*z + 24*z^2 ---------------------------------------- (244) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 1 }-> zWquot(X1, X2) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' activate(z) -{ 2 }-> 1 + X' + (1 + (1 + X')) :|: z - 1 >= 0, X' >= 0, z - 1 = X' from(z) -{ 1 }-> 1 + z :|: z >= 0 from(z) -{ 1 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 1 + z' }-> s :|: s >= 0, s <= 0, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 1 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 6 }-> 1 + s'' :|: s'' >= 0, s'' <= 1, z - 1 >= 0, z' = 1 + 0 quot(z, z') -{ 4 + 2*z' }-> 1 + s1 :|: s1 >= 0, s1 <= 1, s' >= 0, s' <= 0, z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 4 + z' }-> 1 + s2 :|: s2 >= 0, s2 <= 1, z' - 1 >= 0, z - 1 >= 0 sel(z, z') -{ 1 }-> X :|: z' = 1 + X + XS, X >= 0, z = 0, XS >= 0 sel(z, z') -{ 2 }-> sel(z - 1, XS) :|: z' = 1 + X + XS, X >= 0, XS >= 0, z - 1 >= 0 sel(z, z') -{ 2 }-> sel(z - 1, zWquot(X1', X2')) :|: X2' >= 0, X1' >= 0, X >= 0, z' = 1 + X + (1 + X1' + X2'), z - 1 >= 0 sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'') :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'' + (1 + (1 + X''))) :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' zWquot(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 1 }-> 0 :|: z = 0, z' >= 0 zWquot(z, z') -{ 4 + Y }-> 1 + s3 + (1 + activate(XS) + activate(YS)) :|: s3 >= 0, s3 <= 1, z = 1 + X + XS, Y >= 0, X >= 0, YS >= 0, z' = 1 + Y + YS, XS >= 0 zWquot(z, z') -{ 1 }-> 1 + z + z' :|: z >= 0, z' >= 0 Function symbols to be analyzed: {zWquot,activate}, {sel} Previous analysis results are: from: runtime: O(1) [1], size: O(n^1) [3 + 2*z] minus: runtime: O(n^1) [1 + z'], size: O(1) [0] quot: runtime: O(n^1) [3 + z'], size: O(1) [1] zWquot: runtime: ?, size: O(n^2) [8 + 14*z + 12*z*z' + 6*z^2 + 14*z' + 6*z'^2] activate: runtime: ?, size: O(n^2) [12 + 32*z + 24*z^2] ---------------------------------------- (245) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using KoAT for: zWquot after applying outer abstraction to obtain an ITS, resulting in: O(n^2) with polynomial bound: 11 + 12*z + 2*z*z' + z^2 + 12*z' + z'^2 Computed RUNTIME bound using KoAT for: activate after applying outer abstraction to obtain an ITS, resulting in: O(n^2) with polynomial bound: 15 + 24*z + 4*z^2 ---------------------------------------- (246) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 1 }-> zWquot(X1, X2) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' activate(z) -{ 2 }-> 1 + X' + (1 + (1 + X')) :|: z - 1 >= 0, X' >= 0, z - 1 = X' from(z) -{ 1 }-> 1 + z :|: z >= 0 from(z) -{ 1 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 1 + z' }-> s :|: s >= 0, s <= 0, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 1 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 6 }-> 1 + s'' :|: s'' >= 0, s'' <= 1, z - 1 >= 0, z' = 1 + 0 quot(z, z') -{ 4 + 2*z' }-> 1 + s1 :|: s1 >= 0, s1 <= 1, s' >= 0, s' <= 0, z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 4 + z' }-> 1 + s2 :|: s2 >= 0, s2 <= 1, z' - 1 >= 0, z - 1 >= 0 sel(z, z') -{ 1 }-> X :|: z' = 1 + X + XS, X >= 0, z = 0, XS >= 0 sel(z, z') -{ 2 }-> sel(z - 1, XS) :|: z' = 1 + X + XS, X >= 0, XS >= 0, z - 1 >= 0 sel(z, z') -{ 2 }-> sel(z - 1, zWquot(X1', X2')) :|: X2' >= 0, X1' >= 0, X >= 0, z' = 1 + X + (1 + X1' + X2'), z - 1 >= 0 sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'') :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'' + (1 + (1 + X''))) :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' zWquot(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 1 }-> 0 :|: z = 0, z' >= 0 zWquot(z, z') -{ 4 + Y }-> 1 + s3 + (1 + activate(XS) + activate(YS)) :|: s3 >= 0, s3 <= 1, z = 1 + X + XS, Y >= 0, X >= 0, YS >= 0, z' = 1 + Y + YS, XS >= 0 zWquot(z, z') -{ 1 }-> 1 + z + z' :|: z >= 0, z' >= 0 Function symbols to be analyzed: {sel} Previous analysis results are: from: runtime: O(1) [1], size: O(n^1) [3 + 2*z] minus: runtime: O(n^1) [1 + z'], size: O(1) [0] quot: runtime: O(n^1) [3 + z'], size: O(1) [1] zWquot: runtime: O(n^2) [11 + 12*z + 2*z*z' + z^2 + 12*z' + z'^2], size: O(n^2) [8 + 14*z + 12*z*z' + 6*z^2 + 14*z' + 6*z'^2] activate: runtime: O(n^2) [15 + 24*z + 4*z^2], size: O(n^2) [12 + 32*z + 24*z^2] ---------------------------------------- (247) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (248) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 12 + 12*X1 + 2*X1*X2 + X1^2 + 12*X2 + X2^2 }-> s7 :|: s7 >= 0, s7 <= 14 * X1 + 14 * X2 + 6 * (X1 * X1) + 12 * (X2 * X1) + 6 * (X2 * X2) + 8, X1 >= 0, X2 >= 0, z = 1 + X1 + X2 activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' activate(z) -{ 2 }-> 1 + X' + (1 + (1 + X')) :|: z - 1 >= 0, X' >= 0, z - 1 = X' from(z) -{ 1 }-> 1 + z :|: z >= 0 from(z) -{ 1 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 1 + z' }-> s :|: s >= 0, s <= 0, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 1 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 6 }-> 1 + s'' :|: s'' >= 0, s'' <= 1, z - 1 >= 0, z' = 1 + 0 quot(z, z') -{ 4 + 2*z' }-> 1 + s1 :|: s1 >= 0, s1 <= 1, s' >= 0, s' <= 0, z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 4 + z' }-> 1 + s2 :|: s2 >= 0, s2 <= 1, z' - 1 >= 0, z - 1 >= 0 sel(z, z') -{ 1 }-> X :|: z' = 1 + X + XS, X >= 0, z = 0, XS >= 0 sel(z, z') -{ 2 }-> sel(z - 1, XS) :|: z' = 1 + X + XS, X >= 0, XS >= 0, z - 1 >= 0 sel(z, z') -{ 13 + 12*X1' + 2*X1'*X2' + X1'^2 + 12*X2' + X2'^2 }-> sel(z - 1, s4) :|: s4 >= 0, s4 <= 14 * X1' + 14 * X2' + 6 * (X1' * X1') + 12 * (X2' * X1') + 6 * (X2' * X2') + 8, X2' >= 0, X1' >= 0, X >= 0, z' = 1 + X + (1 + X1' + X2'), z - 1 >= 0 sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'') :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'' + (1 + (1 + X''))) :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' zWquot(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 1 }-> 0 :|: z = 0, z' >= 0 zWquot(z, z') -{ 34 + 24*XS + 4*XS^2 + Y + 24*YS + 4*YS^2 }-> 1 + s3 + (1 + s5 + s6) :|: s5 >= 0, s5 <= 32 * XS + 24 * (XS * XS) + 12, s6 >= 0, s6 <= 32 * YS + 24 * (YS * YS) + 12, s3 >= 0, s3 <= 1, z = 1 + X + XS, Y >= 0, X >= 0, YS >= 0, z' = 1 + Y + YS, XS >= 0 zWquot(z, z') -{ 1 }-> 1 + z + z' :|: z >= 0, z' >= 0 Function symbols to be analyzed: {sel} Previous analysis results are: from: runtime: O(1) [1], size: O(n^1) [3 + 2*z] minus: runtime: O(n^1) [1 + z'], size: O(1) [0] quot: runtime: O(n^1) [3 + z'], size: O(1) [1] zWquot: runtime: O(n^2) [11 + 12*z + 2*z*z' + z^2 + 12*z' + z'^2], size: O(n^2) [8 + 14*z + 12*z*z' + 6*z^2 + 14*z' + 6*z'^2] activate: runtime: O(n^2) [15 + 24*z + 4*z^2], size: O(n^2) [12 + 32*z + 24*z^2] ---------------------------------------- (249) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: sel after applying outer abstraction to obtain an ITS, resulting in: INF with polynomial bound: ? ---------------------------------------- (250) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 12 + 12*X1 + 2*X1*X2 + X1^2 + 12*X2 + X2^2 }-> s7 :|: s7 >= 0, s7 <= 14 * X1 + 14 * X2 + 6 * (X1 * X1) + 12 * (X2 * X1) + 6 * (X2 * X2) + 8, X1 >= 0, X2 >= 0, z = 1 + X1 + X2 activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' activate(z) -{ 2 }-> 1 + X' + (1 + (1 + X')) :|: z - 1 >= 0, X' >= 0, z - 1 = X' from(z) -{ 1 }-> 1 + z :|: z >= 0 from(z) -{ 1 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 1 + z' }-> s :|: s >= 0, s <= 0, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 1 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 6 }-> 1 + s'' :|: s'' >= 0, s'' <= 1, z - 1 >= 0, z' = 1 + 0 quot(z, z') -{ 4 + 2*z' }-> 1 + s1 :|: s1 >= 0, s1 <= 1, s' >= 0, s' <= 0, z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 4 + z' }-> 1 + s2 :|: s2 >= 0, s2 <= 1, z' - 1 >= 0, z - 1 >= 0 sel(z, z') -{ 1 }-> X :|: z' = 1 + X + XS, X >= 0, z = 0, XS >= 0 sel(z, z') -{ 2 }-> sel(z - 1, XS) :|: z' = 1 + X + XS, X >= 0, XS >= 0, z - 1 >= 0 sel(z, z') -{ 13 + 12*X1' + 2*X1'*X2' + X1'^2 + 12*X2' + X2'^2 }-> sel(z - 1, s4) :|: s4 >= 0, s4 <= 14 * X1' + 14 * X2' + 6 * (X1' * X1') + 12 * (X2' * X1') + 6 * (X2' * X2') + 8, X2' >= 0, X1' >= 0, X >= 0, z' = 1 + X + (1 + X1' + X2'), z - 1 >= 0 sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'') :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'' + (1 + (1 + X''))) :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' zWquot(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 1 }-> 0 :|: z = 0, z' >= 0 zWquot(z, z') -{ 34 + 24*XS + 4*XS^2 + Y + 24*YS + 4*YS^2 }-> 1 + s3 + (1 + s5 + s6) :|: s5 >= 0, s5 <= 32 * XS + 24 * (XS * XS) + 12, s6 >= 0, s6 <= 32 * YS + 24 * (YS * YS) + 12, s3 >= 0, s3 <= 1, z = 1 + X + XS, Y >= 0, X >= 0, YS >= 0, z' = 1 + Y + YS, XS >= 0 zWquot(z, z') -{ 1 }-> 1 + z + z' :|: z >= 0, z' >= 0 Function symbols to be analyzed: {sel} Previous analysis results are: from: runtime: O(1) [1], size: O(n^1) [3 + 2*z] minus: runtime: O(n^1) [1 + z'], size: O(1) [0] quot: runtime: O(n^1) [3 + z'], size: O(1) [1] zWquot: runtime: O(n^2) [11 + 12*z + 2*z*z' + z^2 + 12*z' + z'^2], size: O(n^2) [8 + 14*z + 12*z*z' + 6*z^2 + 14*z' + 6*z'^2] activate: runtime: O(n^2) [15 + 24*z + 4*z^2], size: O(n^2) [12 + 32*z + 24*z^2] sel: runtime: ?, size: INF ---------------------------------------- (251) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: sel after applying outer abstraction to obtain an ITS, resulting in: INF with polynomial bound: ? ---------------------------------------- (252) Obligation: Complexity RNTS consisting of the following rules: activate(z) -{ 12 + 12*X1 + 2*X1*X2 + X1^2 + 12*X2 + X2^2 }-> s7 :|: s7 >= 0, s7 <= 14 * X1 + 14 * X2 + 6 * (X1 * X1) + 12 * (X2 * X1) + 6 * (X2 * X2) + 8, X1 >= 0, X2 >= 0, z = 1 + X1 + X2 activate(z) -{ 1 }-> z :|: z >= 0 activate(z) -{ 2 }-> 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X' activate(z) -{ 2 }-> 1 + X' + (1 + (1 + X')) :|: z - 1 >= 0, X' >= 0, z - 1 = X' from(z) -{ 1 }-> 1 + z :|: z >= 0 from(z) -{ 1 }-> 1 + z + (1 + (1 + z)) :|: z >= 0 minus(z, z') -{ 1 + z' }-> s :|: s >= 0, s <= 0, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 1 }-> 0 :|: z' - 1 >= 0, z = 0 quot(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 quot(z, z') -{ 6 }-> 1 + s'' :|: s'' >= 0, s'' <= 1, z - 1 >= 0, z' = 1 + 0 quot(z, z') -{ 4 + 2*z' }-> 1 + s1 :|: s1 >= 0, s1 <= 1, s' >= 0, s' <= 0, z' - 2 >= 0, z - 2 >= 0 quot(z, z') -{ 4 + z' }-> 1 + s2 :|: s2 >= 0, s2 <= 1, z' - 1 >= 0, z - 1 >= 0 sel(z, z') -{ 1 }-> X :|: z' = 1 + X + XS, X >= 0, z = 0, XS >= 0 sel(z, z') -{ 2 }-> sel(z - 1, XS) :|: z' = 1 + X + XS, X >= 0, XS >= 0, z - 1 >= 0 sel(z, z') -{ 13 + 12*X1' + 2*X1'*X2' + X1'^2 + 12*X2' + X2'^2 }-> sel(z - 1, s4) :|: s4 >= 0, s4 <= 14 * X1' + 14 * X2' + 6 * (X1' * X1') + 12 * (X2' * X1') + 6 * (X2' * X2') + 8, X2' >= 0, X1' >= 0, X >= 0, z' = 1 + X + (1 + X1' + X2'), z - 1 >= 0 sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'') :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' sel(z, z') -{ 3 }-> sel(z - 1, 1 + X'' + (1 + (1 + X''))) :|: z' = 1 + X + (1 + X'), X >= 0, X' >= 0, z - 1 >= 0, X'' >= 0, X' = X'' zWquot(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 zWquot(z, z') -{ 1 }-> 0 :|: z = 0, z' >= 0 zWquot(z, z') -{ 34 + 24*XS + 4*XS^2 + Y + 24*YS + 4*YS^2 }-> 1 + s3 + (1 + s5 + s6) :|: s5 >= 0, s5 <= 32 * XS + 24 * (XS * XS) + 12, s6 >= 0, s6 <= 32 * YS + 24 * (YS * YS) + 12, s3 >= 0, s3 <= 1, z = 1 + X + XS, Y >= 0, X >= 0, YS >= 0, z' = 1 + Y + YS, XS >= 0 zWquot(z, z') -{ 1 }-> 1 + z + z' :|: z >= 0, z' >= 0 Function symbols to be analyzed: {sel} Previous analysis results are: from: runtime: O(1) [1], size: O(n^1) [3 + 2*z] minus: runtime: O(n^1) [1 + z'], size: O(1) [0] quot: runtime: O(n^1) [3 + z'], size: O(1) [1] zWquot: runtime: O(n^2) [11 + 12*z + 2*z*z' + z^2 + 12*z' + z'^2], size: O(n^2) [8 + 14*z + 12*z*z' + 6*z^2 + 14*z' + 6*z'^2] activate: runtime: O(n^2) [15 + 24*z + 4*z^2], size: O(n^2) [12 + 32*z + 24*z^2] sel: runtime: INF, size: INF