KILLED proof of input_eptMJRhIyA.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), 6 ms] (12) typed CpxTrs (13) OrderProof [LOWER BOUND(ID), 0 ms] (14) typed CpxTrs (15) RewriteLemmaProof [LOWER BOUND(ID), 1847 ms] (16) BEST (17) proven lower bound (18) LowerBoundPropagationProof [FINISHED, 0 ms] (19) BOUNDS(n^1, INF) (20) typed CpxTrs (21) RewriteLemmaProof [FINISHED, 2725 ms] (22) BOUNDS(EXP, INF) (23) CpxTrsToCdtProof [UPPER BOUND(ID), 0 ms] (24) CdtProblem (25) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (26) CdtProblem (27) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (28) CdtProblem (29) CdtGraphSplitRhsProof [BOTH BOUNDS(ID, ID), 0 ms] (30) CdtProblem (31) CdtLeafRemovalProof [ComplexityIfPolyImplication, 0 ms] (32) CdtProblem (33) CdtKnowledgeProof [BOTH BOUNDS(ID, ID), 0 ms] (34) CdtProblem (35) CdtUsableRulesProof [BOTH BOUNDS(ID, ID), 2 ms] (36) CdtProblem (37) CdtToCpxRelTrsProof [BOTH BOUNDS(ID, ID), 0 ms] (38) CpxRelTRS (39) RelTrsToTrsProof [UPPER BOUND(ID), 0 ms] (40) CpxTRS (41) RelTrsToWeightedTrsProof [BOTH BOUNDS(ID, ID), 0 ms] (42) CpxWeightedTrs (43) CpxWeightedTrsRenamingProof [BOTH BOUNDS(ID, ID), 0 ms] (44) CpxWeightedTrs (45) TypeInferenceProof [BOTH BOUNDS(ID, ID), 0 ms] (46) CpxTypedWeightedTrs (47) CompletionProof [UPPER BOUND(ID), 0 ms] (48) CpxTypedWeightedCompleteTrs (49) NarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (50) CpxTypedWeightedCompleteTrs (51) CpxTypedWeightedTrsToRntsProof [UPPER BOUND(ID), 0 ms] (52) CpxRNTS (53) InliningProof [UPPER BOUND(ID), 1754 ms] (54) CpxRNTS (55) SimplificationProof [BOTH BOUNDS(ID, ID), 0 ms] (56) CpxRNTS (57) CpxRntsAnalysisOrderProof [BOTH BOUNDS(ID, ID), 0 ms] (58) CpxRNTS (59) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (60) CpxRNTS (61) IntTrsBoundProof [UPPER BOUND(ID), 119 ms] (62) CpxRNTS (63) IntTrsBoundProof [UPPER BOUND(ID), 84 ms] (64) CpxRNTS (65) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (66) CpxRNTS (67) IntTrsBoundProof [UPPER BOUND(ID), 80 ms] (68) CpxRNTS (69) IntTrsBoundProof [UPPER BOUND(ID), 0 ms] (70) CpxRNTS (71) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (72) CpxRNTS (73) IntTrsBoundProof [UPPER BOUND(ID), 273 ms] (74) CpxRNTS (75) IntTrsBoundProof [UPPER BOUND(ID), 53 ms] (76) CpxRNTS (77) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (78) CpxRNTS (79) IntTrsBoundProof [UPPER BOUND(ID), 90 ms] (80) CpxRNTS (81) IntTrsBoundProof [UPPER BOUND(ID), 0 ms] (82) CpxRNTS (83) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (84) CpxRNTS (85) IntTrsBoundProof [UPPER BOUND(ID), 328 ms] (86) CpxRNTS (87) IntTrsBoundProof [UPPER BOUND(ID), 98 ms] (88) CpxRNTS (89) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (90) CpxRNTS (91) IntTrsBoundProof [UPPER BOUND(ID), 610 ms] (92) CpxRNTS (93) IntTrsBoundProof [UPPER BOUND(ID), 30 ms] (94) CpxRNTS (95) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (96) CpxRNTS (97) IntTrsBoundProof [UPPER BOUND(ID), 2053 ms] (98) CpxRNTS (99) IntTrsBoundProof [UPPER BOUND(ID), 296 ms] (100) CpxRNTS (101) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (102) CpxRNTS (103) IntTrsBoundProof [UPPER BOUND(ID), 1043 ms] (104) CpxRNTS (105) IntTrsBoundProof [UPPER BOUND(ID), 413 ms] (106) CpxRNTS (107) CompletionProof [UPPER BOUND(ID), 0 ms] (108) CpxTypedWeightedCompleteTrs (109) CpxTypedWeightedTrsToRntsProof [UPPER BOUND(ID), 0 ms] (110) CpxRNTS (111) CdtRuleRemovalProof [UPPER BOUND(ADD(n^1)), 138 ms] (112) CdtProblem (113) CdtKnowledgeProof [BOTH BOUNDS(ID, ID), 0 ms] (114) CdtProblem (115) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (116) CdtProblem (117) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (118) CdtProblem (119) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (120) CdtProblem (121) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (122) CdtProblem (123) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (124) CdtProblem (125) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (126) CdtProblem (127) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (128) CdtProblem (129) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (130) CdtProblem (131) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (132) CdtProblem (133) CdtLeafRemovalProof [ComplexityIfPolyImplication, 0 ms] (134) CdtProblem (135) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (136) CdtProblem (137) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (138) CdtProblem (139) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (140) CdtProblem (141) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 2 ms] (142) CdtProblem (143) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (144) CdtProblem (145) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (146) CdtProblem (147) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (148) CdtProblem (149) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (150) CdtProblem (151) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (152) CdtProblem (153) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (154) CdtProblem (155) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (156) CdtProblem (157) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (158) CdtProblem (159) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (160) CdtProblem (161) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (162) CdtProblem (163) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (164) CdtProblem (165) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (166) CdtProblem (167) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (168) CdtProblem (169) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (170) CdtProblem (171) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (172) CdtProblem (173) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (174) CdtProblem (175) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (176) CdtProblem (177) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (178) CdtProblem (179) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (180) CdtProblem (181) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (182) CdtProblem (183) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (184) CdtProblem (185) CdtRewritingProof [BOTH BOUNDS(ID, ID), 1 ms] (186) CdtProblem (187) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (188) CdtProblem (189) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (190) CdtProblem (191) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (192) CdtProblem (193) CdtGraphSplitRhsProof [BOTH BOUNDS(ID, ID), 6 ms] (194) CdtProblem (195) CdtRewritingProof [BOTH BOUNDS(ID, ID), 116 ms] (196) CdtProblem (197) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (198) CdtProblem (199) CdtRewritingProof [BOTH BOUNDS(ID, ID), 35 ms] (200) CdtProblem (201) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (202) CdtProblem (203) CdtRewritingProof [BOTH BOUNDS(ID, ID), 60 ms] (204) CdtProblem (205) CdtRewritingProof [BOTH BOUNDS(ID, ID), 109 ms] (206) CdtProblem (207) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (208) CdtProblem (209) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 80 ms] (210) CdtProblem (211) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 72 ms] (212) CdtProblem (213) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 43 ms] (214) CdtProblem (215) RelTrsToWeightedTrsProof [UPPER BOUND(ID), 0 ms] (216) CpxWeightedTrs (217) CpxWeightedTrsRenamingProof [BOTH BOUNDS(ID, ID), 0 ms] (218) CpxWeightedTrs (219) TypeInferenceProof [BOTH BOUNDS(ID, ID), 0 ms] (220) CpxTypedWeightedTrs (221) CompletionProof [UPPER BOUND(ID), 0 ms] (222) CpxTypedWeightedCompleteTrs (223) NarrowingProof [BOTH BOUNDS(ID, ID), 7 ms] (224) CpxTypedWeightedCompleteTrs (225) CpxTypedWeightedTrsToRntsProof [UPPER BOUND(ID), 0 ms] (226) CpxRNTS (227) InliningProof [UPPER BOUND(ID), 743 ms] (228) CpxRNTS (229) SimplificationProof [BOTH BOUNDS(ID, ID), 0 ms] (230) CpxRNTS (231) CpxRntsAnalysisOrderProof [BOTH BOUNDS(ID, ID), 0 ms] (232) CpxRNTS (233) ResultPropagationProof [UPPER BOUND(ID), 6 ms] (234) CpxRNTS (235) IntTrsBoundProof [UPPER BOUND(ID), 209 ms] (236) CpxRNTS (237) IntTrsBoundProof [UPPER BOUND(ID), 69 ms] (238) CpxRNTS (239) ResultPropagationProof [UPPER BOUND(ID), 5 ms] (240) CpxRNTS (241) IntTrsBoundProof [UPPER BOUND(ID), 171 ms] (242) CpxRNTS (243) IntTrsBoundProof [UPPER BOUND(ID), 43 ms] (244) CpxRNTS (245) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (246) CpxRNTS (247) IntTrsBoundProof [UPPER BOUND(ID), 181 ms] (248) CpxRNTS (249) IntTrsBoundProof [UPPER BOUND(ID), 3 ms] (250) CpxRNTS (251) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (252) CpxRNTS (253) IntTrsBoundProof [UPPER BOUND(ID), 636 ms] (254) CpxRNTS (255) IntTrsBoundProof [UPPER BOUND(ID), 42 ms] (256) CpxRNTS (257) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (258) CpxRNTS (259) IntTrsBoundProof [UPPER BOUND(ID), 3351 ms] (260) CpxRNTS (261) IntTrsBoundProof [UPPER BOUND(ID), 6628 ms] (262) CpxRNTS (263) CompletionProof [UPPER BOUND(ID), 0 ms] (264) CpxTypedWeightedCompleteTrs (265) CpxTypedWeightedTrsToRntsProof [UPPER BOUND(ID), 8 ms] (266) 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: f(0) -> 0 f(s(0)) -> s(0) f(s(s(x))) -> p(h(g(x))) g(0) -> pair(s(0), s(0)) g(s(x)) -> h(g(x)) h(x) -> pair(+(p(x), q(x)), p(x)) p(pair(x, y)) -> x q(pair(x, y)) -> y +(x, 0) -> x +(x, s(y)) -> s(+(x, y)) f(s(s(x))) -> +(p(g(x)), q(g(x))) g(s(x)) -> pair(+(p(g(x)), q(g(x))), p(g(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: f(0') -> 0' f(s(0')) -> s(0') f(s(s(x))) -> p(h(g(x))) g(0') -> pair(s(0'), s(0')) g(s(x)) -> h(g(x)) h(x) -> pair(+'(p(x), q(x)), p(x)) p(pair(x, y)) -> x q(pair(x, y)) -> y +'(x, 0') -> x +'(x, s(y)) -> s(+'(x, y)) f(s(s(x))) -> +'(p(g(x)), q(g(x))) g(s(x)) -> pair(+'(p(g(x)), q(g(x))), p(g(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: f(0) -> 0 f(s(0)) -> s(0) f(s(s(x))) -> p(h(g(x))) g(0) -> pair(s(0), s(0)) g(s(x)) -> h(g(x)) h(x) -> pair(+(p(x), q(x)), p(x)) p(pair(x, y)) -> x q(pair(x, y)) -> y +(x, 0) -> x +(x, s(y)) -> s(+(x, y)) f(s(s(x))) -> +(p(g(x)), q(g(x))) g(s(x)) -> pair(+(p(g(x)), q(g(x))), p(g(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: f(0) -> 0 f(s(0)) -> s(0) f(s(s(z0))) -> p(h(g(z0))) f(s(s(z0))) -> +(p(g(z0)), q(g(z0))) g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) Tuples: F(0) -> c F(s(0)) -> c1 F(s(s(z0))) -> c2(P(h(g(z0))), H(g(z0)), G(z0)) F(s(s(z0))) -> c3(+'(p(g(z0)), q(g(z0))), P(g(z0)), G(z0)) F(s(s(z0))) -> c4(+'(p(g(z0)), q(g(z0))), Q(g(z0)), G(z0)) G(0) -> c5 G(s(z0)) -> c6(H(g(z0)), G(z0)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), P(g(z0)), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), Q(g(z0)), G(z0)) G(s(z0)) -> c9(P(g(z0)), G(z0)) H(z0) -> c10(+'(p(z0), q(z0)), P(z0)) H(z0) -> c11(+'(p(z0), q(z0)), Q(z0)) H(z0) -> c12(P(z0)) P(pair(z0, z1)) -> c13 Q(pair(z0, z1)) -> c14 +'(z0, 0) -> c15 +'(z0, s(z1)) -> c16(+'(z0, z1)) S tuples: F(0) -> c F(s(0)) -> c1 F(s(s(z0))) -> c2(P(h(g(z0))), H(g(z0)), G(z0)) F(s(s(z0))) -> c3(+'(p(g(z0)), q(g(z0))), P(g(z0)), G(z0)) F(s(s(z0))) -> c4(+'(p(g(z0)), q(g(z0))), Q(g(z0)), G(z0)) G(0) -> c5 G(s(z0)) -> c6(H(g(z0)), G(z0)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), P(g(z0)), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), Q(g(z0)), G(z0)) G(s(z0)) -> c9(P(g(z0)), G(z0)) H(z0) -> c10(+'(p(z0), q(z0)), P(z0)) H(z0) -> c11(+'(p(z0), q(z0)), Q(z0)) H(z0) -> c12(P(z0)) P(pair(z0, z1)) -> c13 Q(pair(z0, z1)) -> c14 +'(z0, 0) -> c15 +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples:none Defined Rule Symbols: f_1, g_1, h_1, p_1, q_1, +_2 Defined Pair Symbols: F_1, G_1, H_1, P_1, Q_1, +'_2 Compound Symbols: c, c1, c2_3, c3_3, c4_3, c5, c6_2, c7_3, c8_3, c9_2, c10_2, c11_2, c12_1, c13, c14, c15, c16_1 ---------------------------------------- (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(EXP, INF). The TRS R consists of the following rules: F(0) -> c F(s(0)) -> c1 F(s(s(z0))) -> c2(P(h(g(z0))), H(g(z0)), G(z0)) F(s(s(z0))) -> c3(+'(p(g(z0)), q(g(z0))), P(g(z0)), G(z0)) F(s(s(z0))) -> c4(+'(p(g(z0)), q(g(z0))), Q(g(z0)), G(z0)) G(0) -> c5 G(s(z0)) -> c6(H(g(z0)), G(z0)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), P(g(z0)), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), Q(g(z0)), G(z0)) G(s(z0)) -> c9(P(g(z0)), G(z0)) H(z0) -> c10(+'(p(z0), q(z0)), P(z0)) H(z0) -> c11(+'(p(z0), q(z0)), Q(z0)) H(z0) -> c12(P(z0)) P(pair(z0, z1)) -> c13 Q(pair(z0, z1)) -> c14 +'(z0, 0) -> c15 +'(z0, s(z1)) -> c16(+'(z0, z1)) The (relative) TRS S consists of the following rules: f(0) -> 0 f(s(0)) -> s(0) f(s(s(z0))) -> p(h(g(z0))) f(s(s(z0))) -> +(p(g(z0)), q(g(z0))) g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) 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(EXP, INF). The TRS R consists of the following rules: F(0') -> c F(s(0')) -> c1 F(s(s(z0))) -> c2(P(h(g(z0))), H(g(z0)), G(z0)) F(s(s(z0))) -> c3(+'(p(g(z0)), q(g(z0))), P(g(z0)), G(z0)) F(s(s(z0))) -> c4(+'(p(g(z0)), q(g(z0))), Q(g(z0)), G(z0)) G(0') -> c5 G(s(z0)) -> c6(H(g(z0)), G(z0)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), P(g(z0)), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), Q(g(z0)), G(z0)) G(s(z0)) -> c9(P(g(z0)), G(z0)) H(z0) -> c10(+'(p(z0), q(z0)), P(z0)) H(z0) -> c11(+'(p(z0), q(z0)), Q(z0)) H(z0) -> c12(P(z0)) P(pair(z0, z1)) -> c13 Q(pair(z0, z1)) -> c14 +'(z0, 0') -> c15 +'(z0, s(z1)) -> c16(+'(z0, z1)) The (relative) TRS S consists of the following rules: f(0') -> 0' f(s(0')) -> s(0') f(s(s(z0))) -> p(h(g(z0))) f(s(s(z0))) -> +'(p(g(z0)), q(g(z0))) g(0') -> pair(s(0'), s(0')) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+'(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+'(p(z0), q(z0)), p(z0)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 +'(z0, 0') -> z0 +'(z0, s(z1)) -> s(+'(z0, z1)) Rewrite Strategy: INNERMOST ---------------------------------------- (11) TypeInferenceProof (BOTH BOUNDS(ID, ID)) Inferred types. ---------------------------------------- (12) Obligation: Innermost TRS: Rules: F(0') -> c F(s(0')) -> c1 F(s(s(z0))) -> c2(P(h(g(z0))), H(g(z0)), G(z0)) F(s(s(z0))) -> c3(+'(p(g(z0)), q(g(z0))), P(g(z0)), G(z0)) F(s(s(z0))) -> c4(+'(p(g(z0)), q(g(z0))), Q(g(z0)), G(z0)) G(0') -> c5 G(s(z0)) -> c6(H(g(z0)), G(z0)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), P(g(z0)), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), Q(g(z0)), G(z0)) G(s(z0)) -> c9(P(g(z0)), G(z0)) H(z0) -> c10(+'(p(z0), q(z0)), P(z0)) H(z0) -> c11(+'(p(z0), q(z0)), Q(z0)) H(z0) -> c12(P(z0)) P(pair(z0, z1)) -> c13 Q(pair(z0, z1)) -> c14 +'(z0, 0') -> c15 +'(z0, s(z1)) -> c16(+'(z0, z1)) f(0') -> 0' f(s(0')) -> s(0') f(s(s(z0))) -> p(h(g(z0))) f(s(s(z0))) -> +'(p(g(z0)), q(g(z0))) g(0') -> pair(s(0'), s(0')) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+'(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+'(p(z0), q(z0)), p(z0)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 +'(z0, 0') -> z0 +'(z0, s(z1)) -> s(+'(z0, z1)) Types: F :: 0':s:c15:c16 -> c:c1:c2:c3:c4 0' :: 0':s:c15:c16 c :: c:c1:c2:c3:c4 s :: 0':s:c15:c16 -> 0':s:c15:c16 c1 :: c:c1:c2:c3:c4 c2 :: c13 -> c10:c11:c12 -> c5:c6:c7:c8:c9 -> c:c1:c2:c3:c4 P :: pair -> c13 h :: pair -> pair g :: 0':s:c15:c16 -> pair H :: pair -> c10:c11:c12 G :: 0':s:c15:c16 -> c5:c6:c7:c8:c9 c3 :: 0':s:c15:c16 -> c13 -> c5:c6:c7:c8:c9 -> c:c1:c2:c3:c4 +' :: 0':s:c15:c16 -> 0':s:c15:c16 -> 0':s:c15:c16 p :: pair -> 0':s:c15:c16 q :: pair -> 0':s:c15:c16 c4 :: 0':s:c15:c16 -> c14 -> c5:c6:c7:c8:c9 -> c:c1:c2:c3:c4 Q :: pair -> c14 c5 :: c5:c6:c7:c8:c9 c6 :: c10:c11:c12 -> c5:c6:c7:c8:c9 -> c5:c6:c7:c8:c9 c7 :: 0':s:c15:c16 -> c13 -> c5:c6:c7:c8:c9 -> c5:c6:c7:c8:c9 c8 :: 0':s:c15:c16 -> c14 -> c5:c6:c7:c8:c9 -> c5:c6:c7:c8:c9 c9 :: c13 -> c5:c6:c7:c8:c9 -> c5:c6:c7:c8:c9 c10 :: 0':s:c15:c16 -> c13 -> c10:c11:c12 c11 :: 0':s:c15:c16 -> c14 -> c10:c11:c12 c12 :: c13 -> c10:c11:c12 pair :: 0':s:c15:c16 -> 0':s:c15:c16 -> pair c13 :: c13 c14 :: c14 c15 :: 0':s:c15:c16 c16 :: 0':s:c15:c16 -> 0':s:c15:c16 f :: 0':s:c15:c16 -> 0':s:c15:c16 hole_c:c1:c2:c3:c41_17 :: c:c1:c2:c3:c4 hole_0':s:c15:c162_17 :: 0':s:c15:c16 hole_c133_17 :: c13 hole_c10:c11:c124_17 :: c10:c11:c12 hole_c5:c6:c7:c8:c95_17 :: c5:c6:c7:c8:c9 hole_pair6_17 :: pair hole_c147_17 :: c14 gen_0':s:c15:c168_17 :: Nat -> 0':s:c15:c16 gen_c5:c6:c7:c8:c99_17 :: Nat -> c5:c6:c7:c8:c9 ---------------------------------------- (13) OrderProof (LOWER BOUND(ID)) Heuristically decided to analyse the following defined symbols: g, G, +' They will be analysed ascendingly in the following order: g < G +' < g +' < G ---------------------------------------- (14) Obligation: Innermost TRS: Rules: F(0') -> c F(s(0')) -> c1 F(s(s(z0))) -> c2(P(h(g(z0))), H(g(z0)), G(z0)) F(s(s(z0))) -> c3(+'(p(g(z0)), q(g(z0))), P(g(z0)), G(z0)) F(s(s(z0))) -> c4(+'(p(g(z0)), q(g(z0))), Q(g(z0)), G(z0)) G(0') -> c5 G(s(z0)) -> c6(H(g(z0)), G(z0)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), P(g(z0)), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), Q(g(z0)), G(z0)) G(s(z0)) -> c9(P(g(z0)), G(z0)) H(z0) -> c10(+'(p(z0), q(z0)), P(z0)) H(z0) -> c11(+'(p(z0), q(z0)), Q(z0)) H(z0) -> c12(P(z0)) P(pair(z0, z1)) -> c13 Q(pair(z0, z1)) -> c14 +'(z0, 0') -> c15 +'(z0, s(z1)) -> c16(+'(z0, z1)) f(0') -> 0' f(s(0')) -> s(0') f(s(s(z0))) -> p(h(g(z0))) f(s(s(z0))) -> +'(p(g(z0)), q(g(z0))) g(0') -> pair(s(0'), s(0')) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+'(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+'(p(z0), q(z0)), p(z0)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 +'(z0, 0') -> z0 +'(z0, s(z1)) -> s(+'(z0, z1)) Types: F :: 0':s:c15:c16 -> c:c1:c2:c3:c4 0' :: 0':s:c15:c16 c :: c:c1:c2:c3:c4 s :: 0':s:c15:c16 -> 0':s:c15:c16 c1 :: c:c1:c2:c3:c4 c2 :: c13 -> c10:c11:c12 -> c5:c6:c7:c8:c9 -> c:c1:c2:c3:c4 P :: pair -> c13 h :: pair -> pair g :: 0':s:c15:c16 -> pair H :: pair -> c10:c11:c12 G :: 0':s:c15:c16 -> c5:c6:c7:c8:c9 c3 :: 0':s:c15:c16 -> c13 -> c5:c6:c7:c8:c9 -> c:c1:c2:c3:c4 +' :: 0':s:c15:c16 -> 0':s:c15:c16 -> 0':s:c15:c16 p :: pair -> 0':s:c15:c16 q :: pair -> 0':s:c15:c16 c4 :: 0':s:c15:c16 -> c14 -> c5:c6:c7:c8:c9 -> c:c1:c2:c3:c4 Q :: pair -> c14 c5 :: c5:c6:c7:c8:c9 c6 :: c10:c11:c12 -> c5:c6:c7:c8:c9 -> c5:c6:c7:c8:c9 c7 :: 0':s:c15:c16 -> c13 -> c5:c6:c7:c8:c9 -> c5:c6:c7:c8:c9 c8 :: 0':s:c15:c16 -> c14 -> c5:c6:c7:c8:c9 -> c5:c6:c7:c8:c9 c9 :: c13 -> c5:c6:c7:c8:c9 -> c5:c6:c7:c8:c9 c10 :: 0':s:c15:c16 -> c13 -> c10:c11:c12 c11 :: 0':s:c15:c16 -> c14 -> c10:c11:c12 c12 :: c13 -> c10:c11:c12 pair :: 0':s:c15:c16 -> 0':s:c15:c16 -> pair c13 :: c13 c14 :: c14 c15 :: 0':s:c15:c16 c16 :: 0':s:c15:c16 -> 0':s:c15:c16 f :: 0':s:c15:c16 -> 0':s:c15:c16 hole_c:c1:c2:c3:c41_17 :: c:c1:c2:c3:c4 hole_0':s:c15:c162_17 :: 0':s:c15:c16 hole_c133_17 :: c13 hole_c10:c11:c124_17 :: c10:c11:c12 hole_c5:c6:c7:c8:c95_17 :: c5:c6:c7:c8:c9 hole_pair6_17 :: pair hole_c147_17 :: c14 gen_0':s:c15:c168_17 :: Nat -> 0':s:c15:c16 gen_c5:c6:c7:c8:c99_17 :: Nat -> c5:c6:c7:c8:c9 Generator Equations: gen_0':s:c15:c168_17(0) <=> 0' gen_0':s:c15:c168_17(+(x, 1)) <=> s(gen_0':s:c15:c168_17(x)) gen_c5:c6:c7:c8:c99_17(0) <=> c5 gen_c5:c6:c7:c8:c99_17(+(x, 1)) <=> c6(c10(0', c13), gen_c5:c6:c7:c8:c99_17(x)) The following defined symbols remain to be analysed: +', g, G They will be analysed ascendingly in the following order: g < G +' < g +' < G ---------------------------------------- (15) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: +'(gen_0':s:c15:c168_17(a), gen_0':s:c15:c168_17(+(1, n11_17))) -> *10_17, rt in Omega(n11_17) Induction Base: +'(gen_0':s:c15:c168_17(a), gen_0':s:c15:c168_17(+(1, 0))) Induction Step: +'(gen_0':s:c15:c168_17(a), gen_0':s:c15:c168_17(+(1, +(n11_17, 1)))) ->_R^Omega(1) c16(+'(gen_0':s:c15:c168_17(a), gen_0':s:c15:c168_17(+(1, n11_17)))) ->_IH c16(*10_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: F(0') -> c F(s(0')) -> c1 F(s(s(z0))) -> c2(P(h(g(z0))), H(g(z0)), G(z0)) F(s(s(z0))) -> c3(+'(p(g(z0)), q(g(z0))), P(g(z0)), G(z0)) F(s(s(z0))) -> c4(+'(p(g(z0)), q(g(z0))), Q(g(z0)), G(z0)) G(0') -> c5 G(s(z0)) -> c6(H(g(z0)), G(z0)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), P(g(z0)), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), Q(g(z0)), G(z0)) G(s(z0)) -> c9(P(g(z0)), G(z0)) H(z0) -> c10(+'(p(z0), q(z0)), P(z0)) H(z0) -> c11(+'(p(z0), q(z0)), Q(z0)) H(z0) -> c12(P(z0)) P(pair(z0, z1)) -> c13 Q(pair(z0, z1)) -> c14 +'(z0, 0') -> c15 +'(z0, s(z1)) -> c16(+'(z0, z1)) f(0') -> 0' f(s(0')) -> s(0') f(s(s(z0))) -> p(h(g(z0))) f(s(s(z0))) -> +'(p(g(z0)), q(g(z0))) g(0') -> pair(s(0'), s(0')) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+'(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+'(p(z0), q(z0)), p(z0)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 +'(z0, 0') -> z0 +'(z0, s(z1)) -> s(+'(z0, z1)) Types: F :: 0':s:c15:c16 -> c:c1:c2:c3:c4 0' :: 0':s:c15:c16 c :: c:c1:c2:c3:c4 s :: 0':s:c15:c16 -> 0':s:c15:c16 c1 :: c:c1:c2:c3:c4 c2 :: c13 -> c10:c11:c12 -> c5:c6:c7:c8:c9 -> c:c1:c2:c3:c4 P :: pair -> c13 h :: pair -> pair g :: 0':s:c15:c16 -> pair H :: pair -> c10:c11:c12 G :: 0':s:c15:c16 -> c5:c6:c7:c8:c9 c3 :: 0':s:c15:c16 -> c13 -> c5:c6:c7:c8:c9 -> c:c1:c2:c3:c4 +' :: 0':s:c15:c16 -> 0':s:c15:c16 -> 0':s:c15:c16 p :: pair -> 0':s:c15:c16 q :: pair -> 0':s:c15:c16 c4 :: 0':s:c15:c16 -> c14 -> c5:c6:c7:c8:c9 -> c:c1:c2:c3:c4 Q :: pair -> c14 c5 :: c5:c6:c7:c8:c9 c6 :: c10:c11:c12 -> c5:c6:c7:c8:c9 -> c5:c6:c7:c8:c9 c7 :: 0':s:c15:c16 -> c13 -> c5:c6:c7:c8:c9 -> c5:c6:c7:c8:c9 c8 :: 0':s:c15:c16 -> c14 -> c5:c6:c7:c8:c9 -> c5:c6:c7:c8:c9 c9 :: c13 -> c5:c6:c7:c8:c9 -> c5:c6:c7:c8:c9 c10 :: 0':s:c15:c16 -> c13 -> c10:c11:c12 c11 :: 0':s:c15:c16 -> c14 -> c10:c11:c12 c12 :: c13 -> c10:c11:c12 pair :: 0':s:c15:c16 -> 0':s:c15:c16 -> pair c13 :: c13 c14 :: c14 c15 :: 0':s:c15:c16 c16 :: 0':s:c15:c16 -> 0':s:c15:c16 f :: 0':s:c15:c16 -> 0':s:c15:c16 hole_c:c1:c2:c3:c41_17 :: c:c1:c2:c3:c4 hole_0':s:c15:c162_17 :: 0':s:c15:c16 hole_c133_17 :: c13 hole_c10:c11:c124_17 :: c10:c11:c12 hole_c5:c6:c7:c8:c95_17 :: c5:c6:c7:c8:c9 hole_pair6_17 :: pair hole_c147_17 :: c14 gen_0':s:c15:c168_17 :: Nat -> 0':s:c15:c16 gen_c5:c6:c7:c8:c99_17 :: Nat -> c5:c6:c7:c8:c9 Generator Equations: gen_0':s:c15:c168_17(0) <=> 0' gen_0':s:c15:c168_17(+(x, 1)) <=> s(gen_0':s:c15:c168_17(x)) gen_c5:c6:c7:c8:c99_17(0) <=> c5 gen_c5:c6:c7:c8:c99_17(+(x, 1)) <=> c6(c10(0', c13), gen_c5:c6:c7:c8:c99_17(x)) The following defined symbols remain to be analysed: +', g, G They will be analysed ascendingly in the following order: g < G +' < g +' < G ---------------------------------------- (18) LowerBoundPropagationProof (FINISHED) Propagated lower bound. ---------------------------------------- (19) BOUNDS(n^1, INF) ---------------------------------------- (20) Obligation: Innermost TRS: Rules: F(0') -> c F(s(0')) -> c1 F(s(s(z0))) -> c2(P(h(g(z0))), H(g(z0)), G(z0)) F(s(s(z0))) -> c3(+'(p(g(z0)), q(g(z0))), P(g(z0)), G(z0)) F(s(s(z0))) -> c4(+'(p(g(z0)), q(g(z0))), Q(g(z0)), G(z0)) G(0') -> c5 G(s(z0)) -> c6(H(g(z0)), G(z0)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), P(g(z0)), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), Q(g(z0)), G(z0)) G(s(z0)) -> c9(P(g(z0)), G(z0)) H(z0) -> c10(+'(p(z0), q(z0)), P(z0)) H(z0) -> c11(+'(p(z0), q(z0)), Q(z0)) H(z0) -> c12(P(z0)) P(pair(z0, z1)) -> c13 Q(pair(z0, z1)) -> c14 +'(z0, 0') -> c15 +'(z0, s(z1)) -> c16(+'(z0, z1)) f(0') -> 0' f(s(0')) -> s(0') f(s(s(z0))) -> p(h(g(z0))) f(s(s(z0))) -> +'(p(g(z0)), q(g(z0))) g(0') -> pair(s(0'), s(0')) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+'(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+'(p(z0), q(z0)), p(z0)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 +'(z0, 0') -> z0 +'(z0, s(z1)) -> s(+'(z0, z1)) Types: F :: 0':s:c15:c16 -> c:c1:c2:c3:c4 0' :: 0':s:c15:c16 c :: c:c1:c2:c3:c4 s :: 0':s:c15:c16 -> 0':s:c15:c16 c1 :: c:c1:c2:c3:c4 c2 :: c13 -> c10:c11:c12 -> c5:c6:c7:c8:c9 -> c:c1:c2:c3:c4 P :: pair -> c13 h :: pair -> pair g :: 0':s:c15:c16 -> pair H :: pair -> c10:c11:c12 G :: 0':s:c15:c16 -> c5:c6:c7:c8:c9 c3 :: 0':s:c15:c16 -> c13 -> c5:c6:c7:c8:c9 -> c:c1:c2:c3:c4 +' :: 0':s:c15:c16 -> 0':s:c15:c16 -> 0':s:c15:c16 p :: pair -> 0':s:c15:c16 q :: pair -> 0':s:c15:c16 c4 :: 0':s:c15:c16 -> c14 -> c5:c6:c7:c8:c9 -> c:c1:c2:c3:c4 Q :: pair -> c14 c5 :: c5:c6:c7:c8:c9 c6 :: c10:c11:c12 -> c5:c6:c7:c8:c9 -> c5:c6:c7:c8:c9 c7 :: 0':s:c15:c16 -> c13 -> c5:c6:c7:c8:c9 -> c5:c6:c7:c8:c9 c8 :: 0':s:c15:c16 -> c14 -> c5:c6:c7:c8:c9 -> c5:c6:c7:c8:c9 c9 :: c13 -> c5:c6:c7:c8:c9 -> c5:c6:c7:c8:c9 c10 :: 0':s:c15:c16 -> c13 -> c10:c11:c12 c11 :: 0':s:c15:c16 -> c14 -> c10:c11:c12 c12 :: c13 -> c10:c11:c12 pair :: 0':s:c15:c16 -> 0':s:c15:c16 -> pair c13 :: c13 c14 :: c14 c15 :: 0':s:c15:c16 c16 :: 0':s:c15:c16 -> 0':s:c15:c16 f :: 0':s:c15:c16 -> 0':s:c15:c16 hole_c:c1:c2:c3:c41_17 :: c:c1:c2:c3:c4 hole_0':s:c15:c162_17 :: 0':s:c15:c16 hole_c133_17 :: c13 hole_c10:c11:c124_17 :: c10:c11:c12 hole_c5:c6:c7:c8:c95_17 :: c5:c6:c7:c8:c9 hole_pair6_17 :: pair hole_c147_17 :: c14 gen_0':s:c15:c168_17 :: Nat -> 0':s:c15:c16 gen_c5:c6:c7:c8:c99_17 :: Nat -> c5:c6:c7:c8:c9 Lemmas: +'(gen_0':s:c15:c168_17(a), gen_0':s:c15:c168_17(+(1, n11_17))) -> *10_17, rt in Omega(n11_17) Generator Equations: gen_0':s:c15:c168_17(0) <=> 0' gen_0':s:c15:c168_17(+(x, 1)) <=> s(gen_0':s:c15:c168_17(x)) gen_c5:c6:c7:c8:c99_17(0) <=> c5 gen_c5:c6:c7:c8:c99_17(+(x, 1)) <=> c6(c10(0', c13), gen_c5:c6:c7:c8:c99_17(x)) The following defined symbols remain to be analysed: g, G They will be analysed ascendingly in the following order: g < G ---------------------------------------- (21) RewriteLemmaProof (FINISHED) Proved the following rewrite lemma: g(gen_0':s:c15:c168_17(+(1, n2395_17))) -> *10_17, rt in Omega(EXP) Induction Base: g(gen_0':s:c15:c168_17(+(1, 0))) Induction Step: g(gen_0':s:c15:c168_17(+(1, +(n2395_17, 1)))) ->_R^Omega(0) pair(+'(p(g(gen_0':s:c15:c168_17(+(1, n2395_17)))), q(g(gen_0':s:c15:c168_17(+(1, n2395_17))))), p(g(gen_0':s:c15:c168_17(+(1, n2395_17))))) ->_IH pair(+'(p(*10_17), q(g(gen_0':s:c15:c168_17(+(1, n2395_17))))), p(g(gen_0':s:c15:c168_17(+(1, n2395_17))))) ->_IH pair(+'(p(*10_17), q(*10_17)), p(g(gen_0':s:c15:c168_17(+(1, n2395_17))))) ->_IH pair(+'(p(*10_17), q(*10_17)), p(*10_17)) We have rt in EXP and sz in O(n). Thus, we have irc_R in EXP ---------------------------------------- (22) BOUNDS(EXP, INF) ---------------------------------------- (23) CpxTrsToCdtProof (UPPER BOUND(ID)) Converted Cpx (relative) TRS with rewrite strategy PARALLEL_INNERMOST to CDT ---------------------------------------- (24) Obligation: Complexity Dependency Tuples Problem Rules: f(0) -> 0 f(s(0)) -> s(0) f(s(s(z0))) -> p(h(g(z0))) f(s(s(z0))) -> +(p(g(z0)), q(g(z0))) g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) Tuples: F(0) -> c F(s(0)) -> c1 F(s(s(z0))) -> c2(P(h(g(z0))), H(g(z0)), G(z0)) F(s(s(z0))) -> c3(+'(p(g(z0)), q(g(z0))), P(g(z0)), G(z0)) F(s(s(z0))) -> c4(+'(p(g(z0)), q(g(z0))), Q(g(z0)), G(z0)) G(0) -> c5 G(s(z0)) -> c6(H(g(z0)), G(z0)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), P(g(z0)), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), Q(g(z0)), G(z0)) G(s(z0)) -> c9(P(g(z0)), G(z0)) H(z0) -> c10(+'(p(z0), q(z0)), P(z0)) H(z0) -> c11(+'(p(z0), q(z0)), Q(z0)) H(z0) -> c12(P(z0)) P(pair(z0, z1)) -> c13 Q(pair(z0, z1)) -> c14 +'(z0, 0) -> c15 +'(z0, s(z1)) -> c16(+'(z0, z1)) S tuples: F(0) -> c F(s(0)) -> c1 F(s(s(z0))) -> c2(P(h(g(z0))), H(g(z0)), G(z0)) F(s(s(z0))) -> c3(+'(p(g(z0)), q(g(z0))), P(g(z0)), G(z0)) F(s(s(z0))) -> c4(+'(p(g(z0)), q(g(z0))), Q(g(z0)), G(z0)) G(0) -> c5 G(s(z0)) -> c6(H(g(z0)), G(z0)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), P(g(z0)), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), Q(g(z0)), G(z0)) G(s(z0)) -> c9(P(g(z0)), G(z0)) H(z0) -> c10(+'(p(z0), q(z0)), P(z0)) H(z0) -> c11(+'(p(z0), q(z0)), Q(z0)) H(z0) -> c12(P(z0)) P(pair(z0, z1)) -> c13 Q(pair(z0, z1)) -> c14 +'(z0, 0) -> c15 +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples:none Defined Rule Symbols: f_1, g_1, h_1, p_1, q_1, +_2 Defined Pair Symbols: F_1, G_1, H_1, P_1, Q_1, +'_2 Compound Symbols: c, c1, c2_3, c3_3, c4_3, c5, c6_2, c7_3, c8_3, c9_2, c10_2, c11_2, c12_1, c13, c14, c15, c16_1 ---------------------------------------- (25) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 7 trailing nodes: F(0) -> c G(0) -> c5 +'(z0, 0) -> c15 Q(pair(z0, z1)) -> c14 H(z0) -> c12(P(z0)) P(pair(z0, z1)) -> c13 F(s(0)) -> c1 ---------------------------------------- (26) Obligation: Complexity Dependency Tuples Problem Rules: f(0) -> 0 f(s(0)) -> s(0) f(s(s(z0))) -> p(h(g(z0))) f(s(s(z0))) -> +(p(g(z0)), q(g(z0))) g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) Tuples: F(s(s(z0))) -> c2(P(h(g(z0))), H(g(z0)), G(z0)) F(s(s(z0))) -> c3(+'(p(g(z0)), q(g(z0))), P(g(z0)), G(z0)) F(s(s(z0))) -> c4(+'(p(g(z0)), q(g(z0))), Q(g(z0)), G(z0)) G(s(z0)) -> c6(H(g(z0)), G(z0)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), P(g(z0)), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), Q(g(z0)), G(z0)) G(s(z0)) -> c9(P(g(z0)), G(z0)) H(z0) -> c10(+'(p(z0), q(z0)), P(z0)) H(z0) -> c11(+'(p(z0), q(z0)), Q(z0)) +'(z0, s(z1)) -> c16(+'(z0, z1)) S tuples: F(s(s(z0))) -> c2(P(h(g(z0))), H(g(z0)), G(z0)) F(s(s(z0))) -> c3(+'(p(g(z0)), q(g(z0))), P(g(z0)), G(z0)) F(s(s(z0))) -> c4(+'(p(g(z0)), q(g(z0))), Q(g(z0)), G(z0)) G(s(z0)) -> c6(H(g(z0)), G(z0)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), P(g(z0)), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), Q(g(z0)), G(z0)) G(s(z0)) -> c9(P(g(z0)), G(z0)) H(z0) -> c10(+'(p(z0), q(z0)), P(z0)) H(z0) -> c11(+'(p(z0), q(z0)), Q(z0)) +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples:none Defined Rule Symbols: f_1, g_1, h_1, p_1, q_1, +_2 Defined Pair Symbols: F_1, G_1, H_1, +'_2 Compound Symbols: c2_3, c3_3, c4_3, c6_2, c7_3, c8_3, c9_2, c10_2, c11_2, c16_1 ---------------------------------------- (27) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 8 trailing tuple parts ---------------------------------------- (28) Obligation: Complexity Dependency Tuples Problem Rules: f(0) -> 0 f(s(0)) -> s(0) f(s(s(z0))) -> p(h(g(z0))) f(s(s(z0))) -> +(p(g(z0)), q(g(z0))) g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) Tuples: G(s(z0)) -> c6(H(g(z0)), G(z0)) +'(z0, s(z1)) -> c16(+'(z0, z1)) F(s(s(z0))) -> c2(H(g(z0)), G(z0)) F(s(s(z0))) -> c3(+'(p(g(z0)), q(g(z0))), G(z0)) F(s(s(z0))) -> c4(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c9(G(z0)) H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) S tuples: G(s(z0)) -> c6(H(g(z0)), G(z0)) +'(z0, s(z1)) -> c16(+'(z0, z1)) F(s(s(z0))) -> c2(H(g(z0)), G(z0)) F(s(s(z0))) -> c3(+'(p(g(z0)), q(g(z0))), G(z0)) F(s(s(z0))) -> c4(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c9(G(z0)) H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) K tuples:none Defined Rule Symbols: f_1, g_1, h_1, p_1, q_1, +_2 Defined Pair Symbols: G_1, +'_2, F_1, H_1 Compound Symbols: c6_2, c16_1, c2_2, c3_2, c4_2, c7_2, c8_2, c9_1, c10_1, c11_1 ---------------------------------------- (29) CdtGraphSplitRhsProof (BOTH BOUNDS(ID, ID)) Split RHS of tuples not part of any SCC ---------------------------------------- (30) Obligation: Complexity Dependency Tuples Problem Rules: f(0) -> 0 f(s(0)) -> s(0) f(s(s(z0))) -> p(h(g(z0))) f(s(s(z0))) -> +(p(g(z0)), q(g(z0))) g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) Tuples: G(s(z0)) -> c6(H(g(z0)), G(z0)) +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c9(G(z0)) H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(G(z0)) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) S tuples: G(s(z0)) -> c6(H(g(z0)), G(z0)) +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c9(G(z0)) H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(G(z0)) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) K tuples:none Defined Rule Symbols: f_1, g_1, h_1, p_1, q_1, +_2 Defined Pair Symbols: G_1, +'_2, H_1, F_1 Compound Symbols: c6_2, c16_1, c7_2, c8_2, c9_1, c10_1, c11_1, c_1 ---------------------------------------- (31) CdtLeafRemovalProof (ComplexityIfPolyImplication) Removed 1 leading nodes: F(s(s(z0))) -> c(G(z0)) ---------------------------------------- (32) Obligation: Complexity Dependency Tuples Problem Rules: f(0) -> 0 f(s(0)) -> s(0) f(s(s(z0))) -> p(h(g(z0))) f(s(s(z0))) -> +(p(g(z0)), q(g(z0))) g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) Tuples: G(s(z0)) -> c6(H(g(z0)), G(z0)) +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c9(G(z0)) H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) S tuples: G(s(z0)) -> c6(H(g(z0)), G(z0)) +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c9(G(z0)) H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) K tuples:none Defined Rule Symbols: f_1, g_1, h_1, p_1, q_1, +_2 Defined Pair Symbols: G_1, +'_2, H_1, F_1 Compound Symbols: c6_2, c16_1, c7_2, c8_2, c9_1, c10_1, c11_1, c_1 ---------------------------------------- (33) CdtKnowledgeProof (BOTH BOUNDS(ID, ID)) The following tuples could be moved from S to K by knowledge propagation: F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) ---------------------------------------- (34) Obligation: Complexity Dependency Tuples Problem Rules: f(0) -> 0 f(s(0)) -> s(0) f(s(s(z0))) -> p(h(g(z0))) f(s(s(z0))) -> +(p(g(z0)), q(g(z0))) g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) Tuples: G(s(z0)) -> c6(H(g(z0)), G(z0)) +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c9(G(z0)) H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) S tuples: G(s(z0)) -> c6(H(g(z0)), G(z0)) +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c9(G(z0)) H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) K tuples: F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) Defined Rule Symbols: f_1, g_1, h_1, p_1, q_1, +_2 Defined Pair Symbols: G_1, +'_2, H_1, F_1 Compound Symbols: c6_2, c16_1, c7_2, c8_2, c9_1, c10_1, c11_1, c_1 ---------------------------------------- (35) CdtUsableRulesProof (BOTH BOUNDS(ID, ID)) The following rules are not usable and were removed: f(0) -> 0 f(s(0)) -> s(0) f(s(s(z0))) -> p(h(g(z0))) f(s(s(z0))) -> +(p(g(z0)), q(g(z0))) ---------------------------------------- (36) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: G(s(z0)) -> c6(H(g(z0)), G(z0)) +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c9(G(z0)) H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) S tuples: G(s(z0)) -> c6(H(g(z0)), G(z0)) +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c9(G(z0)) H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) K tuples: F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: G_1, +'_2, H_1, F_1 Compound Symbols: c6_2, c16_1, c7_2, c8_2, c9_1, c10_1, c11_1, c_1 ---------------------------------------- (37) CdtToCpxRelTrsProof (BOTH BOUNDS(ID, ID)) Converted S to standard rules, and D \ S as well as R to relative rules. ---------------------------------------- (38) 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: G(s(z0)) -> c6(H(g(z0)), G(z0)) +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c9(G(z0)) H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) The (relative) TRS S consists of the following rules: F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Rewrite Strategy: INNERMOST ---------------------------------------- (39) RelTrsToTrsProof (UPPER BOUND(ID)) transformed relative TRS to TRS ---------------------------------------- (40) 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: G(s(z0)) -> c6(H(g(z0)), G(z0)) +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c9(G(z0)) H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 S is empty. Rewrite Strategy: INNERMOST ---------------------------------------- (41) RelTrsToWeightedTrsProof (BOTH BOUNDS(ID, ID)) Transformed relative TRS to weighted TRS ---------------------------------------- (42) 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: G(s(z0)) -> c6(H(g(z0)), G(z0)) [1] +'(z0, s(z1)) -> c16(+'(z0, z1)) [1] G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) [1] G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) [1] G(s(z0)) -> c9(G(z0)) [1] H(z0) -> c10(+'(p(z0), q(z0))) [1] H(z0) -> c11(+'(p(z0), q(z0))) [1] F(s(s(z0))) -> c(H(g(z0))) [0] F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) [0] g(0) -> pair(s(0), s(0)) [0] g(s(z0)) -> h(g(z0)) [0] g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) [0] h(z0) -> pair(+(p(z0), q(z0)), p(z0)) [0] +(z0, 0) -> z0 [0] +(z0, s(z1)) -> s(+(z0, z1)) [0] p(pair(z0, z1)) -> z0 [0] q(pair(z0, z1)) -> z1 [0] Rewrite Strategy: INNERMOST ---------------------------------------- (43) CpxWeightedTrsRenamingProof (BOTH BOUNDS(ID, ID)) Renamed defined symbols to avoid conflicts with arithmetic symbols: + => plus ---------------------------------------- (44) 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: G(s(z0)) -> c6(H(g(z0)), G(z0)) [1] +'(z0, s(z1)) -> c16(+'(z0, z1)) [1] G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) [1] G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) [1] G(s(z0)) -> c9(G(z0)) [1] H(z0) -> c10(+'(p(z0), q(z0))) [1] H(z0) -> c11(+'(p(z0), q(z0))) [1] F(s(s(z0))) -> c(H(g(z0))) [0] F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) [0] g(0) -> pair(s(0), s(0)) [0] g(s(z0)) -> h(g(z0)) [0] g(s(z0)) -> pair(plus(p(g(z0)), q(g(z0))), p(g(z0))) [0] h(z0) -> pair(plus(p(z0), q(z0)), p(z0)) [0] plus(z0, 0) -> z0 [0] plus(z0, s(z1)) -> s(plus(z0, z1)) [0] p(pair(z0, z1)) -> z0 [0] q(pair(z0, z1)) -> z1 [0] Rewrite Strategy: INNERMOST ---------------------------------------- (45) TypeInferenceProof (BOTH BOUNDS(ID, ID)) Infered types. ---------------------------------------- (46) Obligation: Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules: G(s(z0)) -> c6(H(g(z0)), G(z0)) [1] +'(z0, s(z1)) -> c16(+'(z0, z1)) [1] G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) [1] G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) [1] G(s(z0)) -> c9(G(z0)) [1] H(z0) -> c10(+'(p(z0), q(z0))) [1] H(z0) -> c11(+'(p(z0), q(z0))) [1] F(s(s(z0))) -> c(H(g(z0))) [0] F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) [0] g(0) -> pair(s(0), s(0)) [0] g(s(z0)) -> h(g(z0)) [0] g(s(z0)) -> pair(plus(p(g(z0)), q(g(z0))), p(g(z0))) [0] h(z0) -> pair(plus(p(z0), q(z0)), p(z0)) [0] plus(z0, 0) -> z0 [0] plus(z0, s(z1)) -> s(plus(z0, z1)) [0] p(pair(z0, z1)) -> z0 [0] q(pair(z0, z1)) -> z1 [0] The TRS has the following type information: G :: s:0 -> c6:c7:c8:c9 s :: s:0 -> s:0 c6 :: c16:c10:c11 -> c6:c7:c8:c9 -> c6:c7:c8:c9 H :: pair -> c16:c10:c11 g :: s:0 -> pair +' :: s:0 -> s:0 -> c16:c10:c11 c16 :: c16:c10:c11 -> c16:c10:c11 c7 :: c16:c10:c11 -> c6:c7:c8:c9 -> c6:c7:c8:c9 p :: pair -> s:0 q :: pair -> s:0 c8 :: c16:c10:c11 -> c6:c7:c8:c9 -> c6:c7:c8:c9 c9 :: c6:c7:c8:c9 -> c6:c7:c8:c9 c10 :: c16:c10:c11 -> c16:c10:c11 c11 :: c16:c10:c11 -> c16:c10:c11 F :: s:0 -> c c :: c16:c10:c11 -> c 0 :: s:0 pair :: s:0 -> s:0 -> pair h :: pair -> pair plus :: s:0 -> s:0 -> s:0 Rewrite Strategy: INNERMOST ---------------------------------------- (47) 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: G_1 +'_2 H_1 (c) The following functions are completely defined: F_1 g_1 h_1 plus_2 p_1 q_1 Due to the following rules being added: F(v0) -> const3 [0] g(v0) -> const2 [0] h(v0) -> const2 [0] plus(v0, v1) -> 0 [0] p(v0) -> 0 [0] q(v0) -> 0 [0] And the following fresh constants: const3, const2, const, const1 ---------------------------------------- (48) 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: G(s(z0)) -> c6(H(g(z0)), G(z0)) [1] +'(z0, s(z1)) -> c16(+'(z0, z1)) [1] G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) [1] G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) [1] G(s(z0)) -> c9(G(z0)) [1] H(z0) -> c10(+'(p(z0), q(z0))) [1] H(z0) -> c11(+'(p(z0), q(z0))) [1] F(s(s(z0))) -> c(H(g(z0))) [0] F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) [0] g(0) -> pair(s(0), s(0)) [0] g(s(z0)) -> h(g(z0)) [0] g(s(z0)) -> pair(plus(p(g(z0)), q(g(z0))), p(g(z0))) [0] h(z0) -> pair(plus(p(z0), q(z0)), p(z0)) [0] plus(z0, 0) -> z0 [0] plus(z0, s(z1)) -> s(plus(z0, z1)) [0] p(pair(z0, z1)) -> z0 [0] q(pair(z0, z1)) -> z1 [0] F(v0) -> const3 [0] g(v0) -> const2 [0] h(v0) -> const2 [0] plus(v0, v1) -> 0 [0] p(v0) -> 0 [0] q(v0) -> 0 [0] The TRS has the following type information: G :: s:0 -> c6:c7:c8:c9 s :: s:0 -> s:0 c6 :: c16:c10:c11 -> c6:c7:c8:c9 -> c6:c7:c8:c9 H :: pair:const2 -> c16:c10:c11 g :: s:0 -> pair:const2 +' :: s:0 -> s:0 -> c16:c10:c11 c16 :: c16:c10:c11 -> c16:c10:c11 c7 :: c16:c10:c11 -> c6:c7:c8:c9 -> c6:c7:c8:c9 p :: pair:const2 -> s:0 q :: pair:const2 -> s:0 c8 :: c16:c10:c11 -> c6:c7:c8:c9 -> c6:c7:c8:c9 c9 :: c6:c7:c8:c9 -> c6:c7:c8:c9 c10 :: c16:c10:c11 -> c16:c10:c11 c11 :: c16:c10:c11 -> c16:c10:c11 F :: s:0 -> c:const3 c :: c16:c10:c11 -> c:const3 0 :: s:0 pair :: s:0 -> s:0 -> pair:const2 h :: pair:const2 -> pair:const2 plus :: s:0 -> s:0 -> s:0 const3 :: c:const3 const2 :: pair:const2 const :: c6:c7:c8:c9 const1 :: c16:c10:c11 Rewrite Strategy: INNERMOST ---------------------------------------- (49) NarrowingProof (BOTH BOUNDS(ID, ID)) Narrowed the inner basic terms of all right-hand sides by a single narrowing step. ---------------------------------------- (50) 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: G(s(0)) -> c6(H(pair(s(0), s(0))), G(0)) [1] G(s(s(z0'))) -> c6(H(h(g(z0'))), G(s(z0'))) [1] G(s(s(z0''))) -> c6(H(pair(plus(p(g(z0'')), q(g(z0''))), p(g(z0'')))), G(s(z0''))) [1] G(s(z0)) -> c6(H(const2), G(z0)) [1] +'(z0, s(z1)) -> c16(+'(z0, z1)) [1] G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0)))), G(0)) [1] G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(const2)), G(0)) [1] G(s(s(z01))) -> c7(+'(p(h(g(z01))), q(h(g(z01)))), G(s(z01))) [1] G(s(s(z01))) -> c7(+'(p(h(g(z01))), q(pair(plus(p(g(z01)), q(g(z01))), p(g(z01))))), G(s(z01))) [1] G(s(s(z01))) -> c7(+'(p(h(g(z01))), q(const2)), G(s(z01))) [1] G(s(s(z02))) -> c7(+'(p(pair(plus(p(g(z02)), q(g(z02))), p(g(z02)))), q(h(g(z02)))), G(s(z02))) [1] G(s(s(z02))) -> c7(+'(p(pair(plus(p(g(z02)), q(g(z02))), p(g(z02)))), q(pair(plus(p(g(z02)), q(g(z02))), p(g(z02))))), G(s(z02))) [1] G(s(s(z02))) -> c7(+'(p(pair(plus(p(g(z02)), q(g(z02))), p(g(z02)))), q(const2)), G(s(z02))) [1] G(s(0)) -> c7(+'(p(const2), q(pair(s(0), s(0)))), G(0)) [1] G(s(s(z03))) -> c7(+'(p(const2), q(h(g(z03)))), G(s(z03))) [1] G(s(s(z04))) -> c7(+'(p(const2), q(pair(plus(p(g(z04)), q(g(z04))), p(g(z04))))), G(s(z04))) [1] G(s(z0)) -> c7(+'(p(const2), q(const2)), G(z0)) [1] G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0)))), G(0)) [1] G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(const2)), G(0)) [1] G(s(s(z05))) -> c8(+'(p(h(g(z05))), q(h(g(z05)))), G(s(z05))) [1] G(s(s(z05))) -> c8(+'(p(h(g(z05))), q(pair(plus(p(g(z05)), q(g(z05))), p(g(z05))))), G(s(z05))) [1] G(s(s(z05))) -> c8(+'(p(h(g(z05))), q(const2)), G(s(z05))) [1] G(s(s(z06))) -> c8(+'(p(pair(plus(p(g(z06)), q(g(z06))), p(g(z06)))), q(h(g(z06)))), G(s(z06))) [1] G(s(s(z06))) -> c8(+'(p(pair(plus(p(g(z06)), q(g(z06))), p(g(z06)))), q(pair(plus(p(g(z06)), q(g(z06))), p(g(z06))))), G(s(z06))) [1] G(s(s(z06))) -> c8(+'(p(pair(plus(p(g(z06)), q(g(z06))), p(g(z06)))), q(const2)), G(s(z06))) [1] G(s(0)) -> c8(+'(p(const2), q(pair(s(0), s(0)))), G(0)) [1] G(s(s(z07))) -> c8(+'(p(const2), q(h(g(z07)))), G(s(z07))) [1] G(s(s(z08))) -> c8(+'(p(const2), q(pair(plus(p(g(z08)), q(g(z08))), p(g(z08))))), G(s(z08))) [1] G(s(z0)) -> c8(+'(p(const2), q(const2)), G(z0)) [1] G(s(z0)) -> c9(G(z0)) [1] H(pair(z09, z1')) -> c10(+'(z09, z1')) [1] H(pair(z09, z1')) -> c10(+'(z09, 0)) [1] H(pair(z010, z1'')) -> c10(+'(0, z1'')) [1] H(z0) -> c10(+'(0, 0)) [1] H(pair(z011, z11)) -> c11(+'(z011, z11)) [1] H(pair(z011, z11)) -> c11(+'(z011, 0)) [1] H(pair(z012, z12)) -> c11(+'(0, z12)) [1] H(z0) -> c11(+'(0, 0)) [1] F(s(s(0))) -> c(H(pair(s(0), s(0)))) [0] F(s(s(s(z013)))) -> c(H(h(g(z013)))) [0] F(s(s(s(z014)))) -> c(H(pair(plus(p(g(z014)), q(g(z014))), p(g(z014))))) [0] F(s(s(z0))) -> c(H(const2)) [0] F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) [0] F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(const2))) [0] F(s(s(s(z015)))) -> c(+'(p(h(g(z015))), q(h(g(z015))))) [0] F(s(s(s(z015)))) -> c(+'(p(h(g(z015))), q(pair(plus(p(g(z015)), q(g(z015))), p(g(z015)))))) [0] F(s(s(s(z015)))) -> c(+'(p(h(g(z015))), q(const2))) [0] F(s(s(s(z016)))) -> c(+'(p(pair(plus(p(g(z016)), q(g(z016))), p(g(z016)))), q(h(g(z016))))) [0] F(s(s(s(z016)))) -> c(+'(p(pair(plus(p(g(z016)), q(g(z016))), p(g(z016)))), q(pair(plus(p(g(z016)), q(g(z016))), p(g(z016)))))) [0] F(s(s(s(z016)))) -> c(+'(p(pair(plus(p(g(z016)), q(g(z016))), p(g(z016)))), q(const2))) [0] F(s(s(0))) -> c(+'(p(const2), q(pair(s(0), s(0))))) [0] F(s(s(s(z017)))) -> c(+'(p(const2), q(h(g(z017))))) [0] F(s(s(s(z018)))) -> c(+'(p(const2), q(pair(plus(p(g(z018)), q(g(z018))), p(g(z018)))))) [0] F(s(s(z0))) -> c(+'(p(const2), q(const2))) [0] g(0) -> pair(s(0), s(0)) [0] g(s(0)) -> h(pair(s(0), s(0))) [0] g(s(s(z019))) -> h(h(g(z019))) [0] g(s(s(z020))) -> h(pair(plus(p(g(z020)), q(g(z020))), p(g(z020)))) [0] g(s(z0)) -> h(const2) [0] g(s(z0)) -> pair(plus(p(g(z0)), q(g(z0))), p(g(z0))) [0] h(pair(z027, z13)) -> pair(plus(z027, z13), p(pair(z027, z13))) [0] h(pair(z027, z13)) -> pair(plus(z027, 0), p(pair(z027, z13))) [0] h(pair(z028, z14)) -> pair(plus(0, z14), p(pair(z028, z14))) [0] h(z0) -> pair(plus(0, 0), p(z0)) [0] plus(z0, 0) -> z0 [0] plus(z0, s(z1)) -> s(plus(z0, z1)) [0] p(pair(z0, z1)) -> z0 [0] q(pair(z0, z1)) -> z1 [0] F(v0) -> const3 [0] g(v0) -> const2 [0] h(v0) -> const2 [0] plus(v0, v1) -> 0 [0] p(v0) -> 0 [0] q(v0) -> 0 [0] The TRS has the following type information: G :: s:0 -> c6:c7:c8:c9 s :: s:0 -> s:0 c6 :: c16:c10:c11 -> c6:c7:c8:c9 -> c6:c7:c8:c9 H :: pair:const2 -> c16:c10:c11 g :: s:0 -> pair:const2 +' :: s:0 -> s:0 -> c16:c10:c11 c16 :: c16:c10:c11 -> c16:c10:c11 c7 :: c16:c10:c11 -> c6:c7:c8:c9 -> c6:c7:c8:c9 p :: pair:const2 -> s:0 q :: pair:const2 -> s:0 c8 :: c16:c10:c11 -> c6:c7:c8:c9 -> c6:c7:c8:c9 c9 :: c6:c7:c8:c9 -> c6:c7:c8:c9 c10 :: c16:c10:c11 -> c16:c10:c11 c11 :: c16:c10:c11 -> c16:c10:c11 F :: s:0 -> c:const3 c :: c16:c10:c11 -> c:const3 0 :: s:0 pair :: s:0 -> s:0 -> pair:const2 h :: pair:const2 -> pair:const2 plus :: s:0 -> s:0 -> s:0 const3 :: c:const3 const2 :: pair:const2 const :: c6:c7:c8:c9 const1 :: c16:c10:c11 Rewrite Strategy: INNERMOST ---------------------------------------- (51) 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 const3 => 0 const2 => 0 const => 0 const1 => 0 ---------------------------------------- (52) Obligation: Complexity RNTS consisting of the following rules: +'(z, z') -{ 1 }-> 1 + +'(z0, z1) :|: z = z0, z1 >= 0, z0 >= 0, z' = 1 + z1 F(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 F(z) -{ 0 }-> 1 + H(h(g(z013))) :|: z013 >= 0, z = 1 + (1 + (1 + z013)) F(z) -{ 0 }-> 1 + H(0) :|: z0 >= 0, z = 1 + (1 + z0) F(z) -{ 0 }-> 1 + H(1 + plus(p(g(z014)), q(g(z014))) + p(g(z014))) :|: z = 1 + (1 + (1 + z014)), z014 >= 0 F(z) -{ 0 }-> 1 + H(1 + (1 + 0) + (1 + 0)) :|: z = 1 + (1 + 0) F(z) -{ 0 }-> 1 + +'(p(h(g(z015))), q(h(g(z015)))) :|: z015 >= 0, z = 1 + (1 + (1 + z015)) F(z) -{ 0 }-> 1 + +'(p(h(g(z015))), q(0)) :|: z015 >= 0, z = 1 + (1 + (1 + z015)) F(z) -{ 0 }-> 1 + +'(p(h(g(z015))), q(1 + plus(p(g(z015)), q(g(z015))) + p(g(z015)))) :|: z015 >= 0, z = 1 + (1 + (1 + z015)) F(z) -{ 0 }-> 1 + +'(p(0), q(h(g(z017)))) :|: z = 1 + (1 + (1 + z017)), z017 >= 0 F(z) -{ 0 }-> 1 + +'(p(0), q(0)) :|: z0 >= 0, z = 1 + (1 + z0) F(z) -{ 0 }-> 1 + +'(p(0), q(1 + plus(p(g(z018)), q(g(z018))) + p(g(z018)))) :|: z = 1 + (1 + (1 + z018)), z018 >= 0 F(z) -{ 0 }-> 1 + +'(p(0), q(1 + (1 + 0) + (1 + 0))) :|: z = 1 + (1 + 0) F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z016)), q(g(z016))) + p(g(z016))), q(h(g(z016)))) :|: z = 1 + (1 + (1 + z016)), z016 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z016)), q(g(z016))) + p(g(z016))), q(0)) :|: z = 1 + (1 + (1 + z016)), z016 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z016)), q(g(z016))) + p(g(z016))), q(1 + plus(p(g(z016)), q(g(z016))) + p(g(z016)))) :|: z = 1 + (1 + (1 + z016)), z016 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + (1 + 0) + (1 + 0)), q(0)) :|: z = 1 + (1 + 0) F(z) -{ 0 }-> 1 + +'(p(1 + (1 + 0) + (1 + 0)), q(1 + (1 + 0) + (1 + 0))) :|: z = 1 + (1 + 0) G(z) -{ 1 }-> 1 + G(z0) :|: z = 1 + z0, z0 >= 0 G(z) -{ 1 }-> 1 + H(h(g(z0'))) + G(1 + z0') :|: z = 1 + (1 + z0'), z0' >= 0 G(z) -{ 1 }-> 1 + H(0) + G(z0) :|: z = 1 + z0, z0 >= 0 G(z) -{ 1 }-> 1 + H(1 + plus(p(g(z0'')), q(g(z0''))) + p(g(z0''))) + G(1 + z0'') :|: z = 1 + (1 + z0''), z0'' >= 0 G(z) -{ 1 }-> 1 + H(1 + (1 + 0) + (1 + 0)) + G(0) :|: z = 1 + 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z01))), q(h(g(z01)))) + G(1 + z01) :|: z = 1 + (1 + z01), z01 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z01))), q(0)) + G(1 + z01) :|: z = 1 + (1 + z01), z01 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z01))), q(1 + plus(p(g(z01)), q(g(z01))) + p(g(z01)))) + G(1 + z01) :|: z = 1 + (1 + z01), z01 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z05))), q(h(g(z05)))) + G(1 + z05) :|: z05 >= 0, z = 1 + (1 + z05) G(z) -{ 1 }-> 1 + +'(p(h(g(z05))), q(0)) + G(1 + z05) :|: z05 >= 0, z = 1 + (1 + z05) G(z) -{ 1 }-> 1 + +'(p(h(g(z05))), q(1 + plus(p(g(z05)), q(g(z05))) + p(g(z05)))) + G(1 + z05) :|: z05 >= 0, z = 1 + (1 + z05) G(z) -{ 1 }-> 1 + +'(p(0), q(h(g(z03)))) + G(1 + z03) :|: z = 1 + (1 + z03), z03 >= 0 G(z) -{ 1 }-> 1 + +'(p(0), q(h(g(z07)))) + G(1 + z07) :|: z = 1 + (1 + z07), z07 >= 0 G(z) -{ 1 }-> 1 + +'(p(0), q(0)) + G(z0) :|: z = 1 + z0, z0 >= 0 G(z) -{ 1 }-> 1 + +'(p(0), q(1 + plus(p(g(z04)), q(g(z04))) + p(g(z04)))) + G(1 + z04) :|: z04 >= 0, z = 1 + (1 + z04) G(z) -{ 1 }-> 1 + +'(p(0), q(1 + plus(p(g(z08)), q(g(z08))) + p(g(z08)))) + G(1 + z08) :|: z08 >= 0, z = 1 + (1 + z08) G(z) -{ 1 }-> 1 + +'(p(0), q(1 + (1 + 0) + (1 + 0))) + G(0) :|: z = 1 + 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z02)), q(g(z02))) + p(g(z02))), q(h(g(z02)))) + G(1 + z02) :|: z = 1 + (1 + z02), z02 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z02)), q(g(z02))) + p(g(z02))), q(0)) + G(1 + z02) :|: z = 1 + (1 + z02), z02 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z02)), q(g(z02))) + p(g(z02))), q(1 + plus(p(g(z02)), q(g(z02))) + p(g(z02)))) + G(1 + z02) :|: z = 1 + (1 + z02), z02 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z06)), q(g(z06))) + p(g(z06))), q(h(g(z06)))) + G(1 + z06) :|: z06 >= 0, z = 1 + (1 + z06) G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z06)), q(g(z06))) + p(g(z06))), q(0)) + G(1 + z06) :|: z06 >= 0, z = 1 + (1 + z06) G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z06)), q(g(z06))) + p(g(z06))), q(1 + plus(p(g(z06)), q(g(z06))) + p(g(z06)))) + G(1 + z06) :|: z06 >= 0, z = 1 + (1 + z06) G(z) -{ 1 }-> 1 + +'(p(1 + (1 + 0) + (1 + 0)), q(0)) + G(0) :|: z = 1 + 0 G(z) -{ 1 }-> 1 + +'(p(1 + (1 + 0) + (1 + 0)), q(1 + (1 + 0) + (1 + 0))) + G(0) :|: z = 1 + 0 H(z) -{ 1 }-> 1 + +'(z011, z11) :|: z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + +'(z011, 0) :|: z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + +'(z09, z1') :|: z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + +'(z09, 0) :|: z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + +'(0, z1'') :|: z = 1 + z010 + z1'', z010 >= 0, z1'' >= 0 H(z) -{ 1 }-> 1 + +'(0, z12) :|: z = 1 + z012 + z12, z012 >= 0, z12 >= 0 H(z) -{ 1 }-> 1 + +'(0, 0) :|: z = z0, z0 >= 0 g(z) -{ 0 }-> h(h(g(z019))) :|: z019 >= 0, z = 1 + (1 + z019) g(z) -{ 0 }-> h(0) :|: z = 1 + z0, z0 >= 0 g(z) -{ 0 }-> h(1 + plus(p(g(z020)), q(g(z020))) + p(g(z020))) :|: z = 1 + (1 + z020), z020 >= 0 g(z) -{ 0 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 g(z) -{ 0 }-> 1 + plus(p(g(z0)), q(g(z0))) + p(g(z0)) :|: z = 1 + z0, z0 >= 0 g(z) -{ 0 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 h(z) -{ 0 }-> 1 + plus(z027, z13) + p(1 + z027 + z13) :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0 h(z) -{ 0 }-> 1 + plus(z027, 0) + p(1 + z027 + z13) :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0 h(z) -{ 0 }-> 1 + plus(0, z14) + p(1 + z028 + z14) :|: z = 1 + z028 + z14, z028 >= 0, z14 >= 0 h(z) -{ 0 }-> 1 + plus(0, 0) + p(z0) :|: z = z0, z0 >= 0 p(z) -{ 0 }-> z0 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 p(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 plus(z, z') -{ 0 }-> z0 :|: z = z0, z0 >= 0, z' = 0 plus(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 plus(z, z') -{ 0 }-> 1 + plus(z0, z1) :|: z = z0, z1 >= 0, z0 >= 0, z' = 1 + z1 q(z) -{ 0 }-> z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 q(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 ---------------------------------------- (53) InliningProof (UPPER BOUND(ID)) Inlined the following terminating rules on right-hand sides where appropriate: p(z) -{ 0 }-> z0 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 p(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 q(z) -{ 0 }-> z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 q(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 ---------------------------------------- (54) Obligation: Complexity RNTS consisting of the following rules: +'(z, z') -{ 1 }-> 1 + +'(z0, z1) :|: z = z0, z1 >= 0, z0 >= 0, z' = 1 + z1 F(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 F(z) -{ 0 }-> 1 + H(h(g(z013))) :|: z013 >= 0, z = 1 + (1 + (1 + z013)) F(z) -{ 0 }-> 1 + H(0) :|: z0 >= 0, z = 1 + (1 + z0) F(z) -{ 0 }-> 1 + H(1 + plus(p(g(z014)), q(g(z014))) + p(g(z014))) :|: z = 1 + (1 + (1 + z014)), z014 >= 0 F(z) -{ 0 }-> 1 + H(1 + (1 + 0) + (1 + 0)) :|: z = 1 + (1 + 0) F(z) -{ 0 }-> 1 + +'(z0, z1') :|: z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' F(z) -{ 0 }-> 1 + +'(z0, 0) :|: z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 F(z) -{ 0 }-> 1 + +'(z0, 0) :|: z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(p(h(g(z015))), q(h(g(z015)))) :|: z015 >= 0, z = 1 + (1 + (1 + z015)) F(z) -{ 0 }-> 1 + +'(p(h(g(z015))), q(1 + plus(p(g(z015)), q(g(z015))) + p(g(z015)))) :|: z015 >= 0, z = 1 + (1 + (1 + z015)) F(z) -{ 0 }-> 1 + +'(p(h(g(z015))), 0) :|: z015 >= 0, z = 1 + (1 + (1 + z015)), v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z016)), q(g(z016))) + p(g(z016))), q(h(g(z016)))) :|: z = 1 + (1 + (1 + z016)), z016 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z016)), q(g(z016))) + p(g(z016))), q(1 + plus(p(g(z016)), q(g(z016))) + p(g(z016)))) :|: z = 1 + (1 + (1 + z016)), z016 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z016)), q(g(z016))) + p(g(z016))), 0) :|: z = 1 + (1 + (1 + z016)), z016 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, z1) :|: z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + +'(0, z1) :|: z = 1 + (1 + 0), v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + +'(0, q(h(g(z017)))) :|: z = 1 + (1 + (1 + z017)), z017 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(1 + plus(p(g(z018)), q(g(z018))) + p(g(z018)))) :|: z = 1 + (1 + (1 + z018)), z018 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, 0) :|: z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + +'(0, 0) :|: z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' F(z) -{ 0 }-> 1 + +'(0, 0) :|: z = 1 + (1 + 0), v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + +'(0, 0) :|: z0 >= 0, z = 1 + (1 + z0), v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' G(z) -{ 1 }-> 1 + G(z0) :|: z = 1 + z0, z0 >= 0 G(z) -{ 1 }-> 1 + H(h(g(z0'))) + G(1 + z0') :|: z = 1 + (1 + z0'), z0' >= 0 G(z) -{ 1 }-> 1 + H(0) + G(z0) :|: z = 1 + z0, z0 >= 0 G(z) -{ 1 }-> 1 + H(1 + plus(p(g(z0'')), q(g(z0''))) + p(g(z0''))) + G(1 + z0'') :|: z = 1 + (1 + z0''), z0'' >= 0 G(z) -{ 1 }-> 1 + H(1 + (1 + 0) + (1 + 0)) + G(0) :|: z = 1 + 0 G(z) -{ 1 }-> 1 + +'(z0, z1') + G(0) :|: z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' G(z) -{ 1 }-> 1 + +'(z0, 0) + G(0) :|: z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 G(z) -{ 1 }-> 1 + +'(z0, 0) + G(0) :|: z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(h(g(z01))), q(h(g(z01)))) + G(1 + z01) :|: z = 1 + (1 + z01), z01 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z01))), q(1 + plus(p(g(z01)), q(g(z01))) + p(g(z01)))) + G(1 + z01) :|: z = 1 + (1 + z01), z01 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z01))), 0) + G(1 + z01) :|: z = 1 + (1 + z01), z01 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(h(g(z05))), q(h(g(z05)))) + G(1 + z05) :|: z05 >= 0, z = 1 + (1 + z05) G(z) -{ 1 }-> 1 + +'(p(h(g(z05))), q(1 + plus(p(g(z05)), q(g(z05))) + p(g(z05)))) + G(1 + z05) :|: z05 >= 0, z = 1 + (1 + z05) G(z) -{ 1 }-> 1 + +'(p(h(g(z05))), 0) + G(1 + z05) :|: z05 >= 0, z = 1 + (1 + z05), v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z02)), q(g(z02))) + p(g(z02))), q(h(g(z02)))) + G(1 + z02) :|: z = 1 + (1 + z02), z02 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z02)), q(g(z02))) + p(g(z02))), q(1 + plus(p(g(z02)), q(g(z02))) + p(g(z02)))) + G(1 + z02) :|: z = 1 + (1 + z02), z02 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z02)), q(g(z02))) + p(g(z02))), 0) + G(1 + z02) :|: z = 1 + (1 + z02), z02 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z06)), q(g(z06))) + p(g(z06))), q(h(g(z06)))) + G(1 + z06) :|: z06 >= 0, z = 1 + (1 + z06) G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z06)), q(g(z06))) + p(g(z06))), q(1 + plus(p(g(z06)), q(g(z06))) + p(g(z06)))) + G(1 + z06) :|: z06 >= 0, z = 1 + (1 + z06) G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z06)), q(g(z06))) + p(g(z06))), 0) + G(1 + z06) :|: z06 >= 0, z = 1 + (1 + z06), v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, z1) + G(0) :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + +'(0, z1) + G(0) :|: z = 1 + 0, v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + +'(0, q(h(g(z03)))) + G(1 + z03) :|: z = 1 + (1 + z03), z03 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(h(g(z07)))) + G(1 + z07) :|: z = 1 + (1 + z07), z07 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(1 + plus(p(g(z04)), q(g(z04))) + p(g(z04)))) + G(1 + z04) :|: z04 >= 0, z = 1 + (1 + z04), v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(1 + plus(p(g(z08)), q(g(z08))) + p(g(z08)))) + G(1 + z08) :|: z08 >= 0, z = 1 + (1 + z08), v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, 0) + G(z0) :|: z = 1 + z0, z0 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' G(z) -{ 1 }-> 1 + +'(0, 0) + G(0) :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + +'(0, 0) + G(0) :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' G(z) -{ 1 }-> 1 + +'(0, 0) + G(0) :|: z = 1 + 0, v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' H(z) -{ 1 }-> 1 + +'(z011, z11) :|: z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + +'(z011, 0) :|: z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + +'(z09, z1') :|: z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + +'(z09, 0) :|: z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + +'(0, z1'') :|: z = 1 + z010 + z1'', z010 >= 0, z1'' >= 0 H(z) -{ 1 }-> 1 + +'(0, z12) :|: z = 1 + z012 + z12, z012 >= 0, z12 >= 0 H(z) -{ 1 }-> 1 + +'(0, 0) :|: z = z0, z0 >= 0 g(z) -{ 0 }-> h(h(g(z019))) :|: z019 >= 0, z = 1 + (1 + z019) g(z) -{ 0 }-> h(0) :|: z = 1 + z0, z0 >= 0 g(z) -{ 0 }-> h(1 + plus(p(g(z020)), q(g(z020))) + p(g(z020))) :|: z = 1 + (1 + z020), z020 >= 0 g(z) -{ 0 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 g(z) -{ 0 }-> 1 + plus(p(g(z0)), q(g(z0))) + p(g(z0)) :|: z = 1 + z0, z0 >= 0 g(z) -{ 0 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 h(z) -{ 0 }-> 1 + plus(z027, z13) + z0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(z027, z13) + 0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + plus(z027, 0) + z0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(z027, 0) + 0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + plus(0, z14) + z0 :|: z = 1 + z028 + z14, z028 >= 0, z14 >= 0, z1 >= 0, z0 >= 0, 1 + z028 + z14 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(0, z14) + 0 :|: z = 1 + z028 + z14, z028 >= 0, z14 >= 0, v0 >= 0, 1 + z028 + z14 = v0 h(z) -{ 0 }-> 1 + plus(0, 0) + z0' :|: z = z0, z0 >= 0, z1 >= 0, z0' >= 0, z0 = 1 + z0' + z1 h(z) -{ 0 }-> 1 + plus(0, 0) + 0 :|: z = z0, z0 >= 0, v0 >= 0, z0 = v0 p(z) -{ 0 }-> z0 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 p(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 plus(z, z') -{ 0 }-> z0 :|: z = z0, z0 >= 0, z' = 0 plus(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 plus(z, z') -{ 0 }-> 1 + plus(z0, z1) :|: z = z0, z1 >= 0, z0 >= 0, z' = 1 + z1 q(z) -{ 0 }-> z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 q(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 ---------------------------------------- (55) SimplificationProof (BOTH BOUNDS(ID, ID)) Simplified the RNTS by moving equalities from the constraints into the right-hand sides. ---------------------------------------- (56) Obligation: Complexity RNTS consisting of the following rules: +'(z, z') -{ 1 }-> 1 + +'(z, z' - 1) :|: z' - 1 >= 0, z >= 0 F(z) -{ 0 }-> 0 :|: z >= 0 F(z) -{ 0 }-> 1 + H(h(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(0) :|: z - 2 >= 0 F(z) -{ 0 }-> 1 + H(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(1 + (1 + 0) + (1 + 0)) :|: z = 1 + (1 + 0) F(z) -{ 0 }-> 1 + +'(z0, z1') :|: z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' F(z) -{ 0 }-> 1 + +'(z0, 0) :|: z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 F(z) -{ 0 }-> 1 + +'(z0, 0) :|: z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, z1) :|: z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + +'(0, z1) :|: z = 1 + (1 + 0), v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + +'(0, q(h(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, 0) :|: z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + +'(0, 0) :|: z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' F(z) -{ 0 }-> 1 + +'(0, 0) :|: z = 1 + (1 + 0), v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + +'(0, 0) :|: z - 2 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' G(z) -{ 1 }-> 1 + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + H(h(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(0) + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + H(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(1 + (1 + 0) + (1 + 0)) + G(0) :|: z = 1 + 0 G(z) -{ 1 }-> 1 + +'(z0, z1') + G(0) :|: z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' G(z) -{ 1 }-> 1 + +'(z0, 0) + G(0) :|: z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 G(z) -{ 1 }-> 1 + +'(z0, 0) + G(0) :|: z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, z1) + G(0) :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + +'(0, z1) + G(0) :|: z = 1 + 0, v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + +'(0, q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, 0) + G(0) :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + +'(0, 0) + G(0) :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' G(z) -{ 1 }-> 1 + +'(0, 0) + G(0) :|: z = 1 + 0, v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + +'(0, 0) + G(z - 1) :|: z - 1 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' H(z) -{ 1 }-> 1 + +'(z011, z11) :|: z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + +'(z011, 0) :|: z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + +'(z09, z1') :|: z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + +'(z09, 0) :|: z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + +'(0, z1'') :|: z = 1 + z010 + z1'', z010 >= 0, z1'' >= 0 H(z) -{ 1 }-> 1 + +'(0, z12) :|: z = 1 + z012 + z12, z012 >= 0, z12 >= 0 H(z) -{ 1 }-> 1 + +'(0, 0) :|: z >= 0 g(z) -{ 0 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(0) :|: z - 1 >= 0 g(z) -{ 0 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 0 }-> 0 :|: z >= 0 g(z) -{ 0 }-> 1 + plus(p(g(z - 1)), q(g(z - 1))) + p(g(z - 1)) :|: z - 1 >= 0 g(z) -{ 0 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 0 }-> 0 :|: z >= 0 h(z) -{ 0 }-> 1 + plus(z027, z13) + z0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(z027, z13) + 0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + plus(z027, 0) + z0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(z027, 0) + 0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + plus(0, z14) + z0 :|: z = 1 + z028 + z14, z028 >= 0, z14 >= 0, z1 >= 0, z0 >= 0, 1 + z028 + z14 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(0, z14) + 0 :|: z = 1 + z028 + z14, z028 >= 0, z14 >= 0, v0 >= 0, 1 + z028 + z14 = v0 h(z) -{ 0 }-> 1 + plus(0, 0) + z0' :|: z >= 0, z1 >= 0, z0' >= 0, z = 1 + z0' + z1 h(z) -{ 0 }-> 1 + plus(0, 0) + 0 :|: z >= 0 p(z) -{ 0 }-> z0 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 0 }-> 1 + plus(z, z' - 1) :|: z' - 1 >= 0, z >= 0 q(z) -{ 0 }-> z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 q(z) -{ 0 }-> 0 :|: z >= 0 ---------------------------------------- (57) CpxRntsAnalysisOrderProof (BOTH BOUNDS(ID, ID)) Found the following analysis order by SCC decomposition: { +' } { q } { plus } { p } { H } { h } { g } { F } { G } ---------------------------------------- (58) Obligation: Complexity RNTS consisting of the following rules: +'(z, z') -{ 1 }-> 1 + +'(z, z' - 1) :|: z' - 1 >= 0, z >= 0 F(z) -{ 0 }-> 0 :|: z >= 0 F(z) -{ 0 }-> 1 + H(h(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(0) :|: z - 2 >= 0 F(z) -{ 0 }-> 1 + H(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(1 + (1 + 0) + (1 + 0)) :|: z = 1 + (1 + 0) F(z) -{ 0 }-> 1 + +'(z0, z1') :|: z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' F(z) -{ 0 }-> 1 + +'(z0, 0) :|: z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 F(z) -{ 0 }-> 1 + +'(z0, 0) :|: z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, z1) :|: z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + +'(0, z1) :|: z = 1 + (1 + 0), v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + +'(0, q(h(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, 0) :|: z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + +'(0, 0) :|: z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' F(z) -{ 0 }-> 1 + +'(0, 0) :|: z = 1 + (1 + 0), v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + +'(0, 0) :|: z - 2 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' G(z) -{ 1 }-> 1 + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + H(h(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(0) + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + H(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(1 + (1 + 0) + (1 + 0)) + G(0) :|: z = 1 + 0 G(z) -{ 1 }-> 1 + +'(z0, z1') + G(0) :|: z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' G(z) -{ 1 }-> 1 + +'(z0, 0) + G(0) :|: z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 G(z) -{ 1 }-> 1 + +'(z0, 0) + G(0) :|: z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, z1) + G(0) :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + +'(0, z1) + G(0) :|: z = 1 + 0, v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + +'(0, q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, 0) + G(0) :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + +'(0, 0) + G(0) :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' G(z) -{ 1 }-> 1 + +'(0, 0) + G(0) :|: z = 1 + 0, v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + +'(0, 0) + G(z - 1) :|: z - 1 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' H(z) -{ 1 }-> 1 + +'(z011, z11) :|: z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + +'(z011, 0) :|: z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + +'(z09, z1') :|: z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + +'(z09, 0) :|: z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + +'(0, z1'') :|: z = 1 + z010 + z1'', z010 >= 0, z1'' >= 0 H(z) -{ 1 }-> 1 + +'(0, z12) :|: z = 1 + z012 + z12, z012 >= 0, z12 >= 0 H(z) -{ 1 }-> 1 + +'(0, 0) :|: z >= 0 g(z) -{ 0 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(0) :|: z - 1 >= 0 g(z) -{ 0 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 0 }-> 0 :|: z >= 0 g(z) -{ 0 }-> 1 + plus(p(g(z - 1)), q(g(z - 1))) + p(g(z - 1)) :|: z - 1 >= 0 g(z) -{ 0 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 0 }-> 0 :|: z >= 0 h(z) -{ 0 }-> 1 + plus(z027, z13) + z0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(z027, z13) + 0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + plus(z027, 0) + z0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(z027, 0) + 0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + plus(0, z14) + z0 :|: z = 1 + z028 + z14, z028 >= 0, z14 >= 0, z1 >= 0, z0 >= 0, 1 + z028 + z14 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(0, z14) + 0 :|: z = 1 + z028 + z14, z028 >= 0, z14 >= 0, v0 >= 0, 1 + z028 + z14 = v0 h(z) -{ 0 }-> 1 + plus(0, 0) + z0' :|: z >= 0, z1 >= 0, z0' >= 0, z = 1 + z0' + z1 h(z) -{ 0 }-> 1 + plus(0, 0) + 0 :|: z >= 0 p(z) -{ 0 }-> z0 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 0 }-> 1 + plus(z, z' - 1) :|: z' - 1 >= 0, z >= 0 q(z) -{ 0 }-> z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {+'}, {q}, {plus}, {p}, {H}, {h}, {g}, {F}, {G} ---------------------------------------- (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: +'(z, z') -{ 1 }-> 1 + +'(z, z' - 1) :|: z' - 1 >= 0, z >= 0 F(z) -{ 0 }-> 0 :|: z >= 0 F(z) -{ 0 }-> 1 + H(h(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(0) :|: z - 2 >= 0 F(z) -{ 0 }-> 1 + H(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(1 + (1 + 0) + (1 + 0)) :|: z = 1 + (1 + 0) F(z) -{ 0 }-> 1 + +'(z0, z1') :|: z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' F(z) -{ 0 }-> 1 + +'(z0, 0) :|: z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 F(z) -{ 0 }-> 1 + +'(z0, 0) :|: z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, z1) :|: z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + +'(0, z1) :|: z = 1 + (1 + 0), v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + +'(0, q(h(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, 0) :|: z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + +'(0, 0) :|: z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' F(z) -{ 0 }-> 1 + +'(0, 0) :|: z = 1 + (1 + 0), v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + +'(0, 0) :|: z - 2 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' G(z) -{ 1 }-> 1 + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + H(h(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(0) + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + H(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(1 + (1 + 0) + (1 + 0)) + G(0) :|: z = 1 + 0 G(z) -{ 1 }-> 1 + +'(z0, z1') + G(0) :|: z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' G(z) -{ 1 }-> 1 + +'(z0, 0) + G(0) :|: z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 G(z) -{ 1 }-> 1 + +'(z0, 0) + G(0) :|: z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, z1) + G(0) :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + +'(0, z1) + G(0) :|: z = 1 + 0, v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + +'(0, q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, 0) + G(0) :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + +'(0, 0) + G(0) :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' G(z) -{ 1 }-> 1 + +'(0, 0) + G(0) :|: z = 1 + 0, v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + +'(0, 0) + G(z - 1) :|: z - 1 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' H(z) -{ 1 }-> 1 + +'(z011, z11) :|: z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + +'(z011, 0) :|: z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + +'(z09, z1') :|: z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + +'(z09, 0) :|: z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + +'(0, z1'') :|: z = 1 + z010 + z1'', z010 >= 0, z1'' >= 0 H(z) -{ 1 }-> 1 + +'(0, z12) :|: z = 1 + z012 + z12, z012 >= 0, z12 >= 0 H(z) -{ 1 }-> 1 + +'(0, 0) :|: z >= 0 g(z) -{ 0 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(0) :|: z - 1 >= 0 g(z) -{ 0 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 0 }-> 0 :|: z >= 0 g(z) -{ 0 }-> 1 + plus(p(g(z - 1)), q(g(z - 1))) + p(g(z - 1)) :|: z - 1 >= 0 g(z) -{ 0 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 0 }-> 0 :|: z >= 0 h(z) -{ 0 }-> 1 + plus(z027, z13) + z0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(z027, z13) + 0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + plus(z027, 0) + z0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(z027, 0) + 0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + plus(0, z14) + z0 :|: z = 1 + z028 + z14, z028 >= 0, z14 >= 0, z1 >= 0, z0 >= 0, 1 + z028 + z14 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(0, z14) + 0 :|: z = 1 + z028 + z14, z028 >= 0, z14 >= 0, v0 >= 0, 1 + z028 + z14 = v0 h(z) -{ 0 }-> 1 + plus(0, 0) + z0' :|: z >= 0, z1 >= 0, z0' >= 0, z = 1 + z0' + z1 h(z) -{ 0 }-> 1 + plus(0, 0) + 0 :|: z >= 0 p(z) -{ 0 }-> z0 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 0 }-> 1 + plus(z, z' - 1) :|: z' - 1 >= 0, z >= 0 q(z) -{ 0 }-> z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {+'}, {q}, {plus}, {p}, {H}, {h}, {g}, {F}, {G} ---------------------------------------- (61) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: +' 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: +'(z, z') -{ 1 }-> 1 + +'(z, z' - 1) :|: z' - 1 >= 0, z >= 0 F(z) -{ 0 }-> 0 :|: z >= 0 F(z) -{ 0 }-> 1 + H(h(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(0) :|: z - 2 >= 0 F(z) -{ 0 }-> 1 + H(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(1 + (1 + 0) + (1 + 0)) :|: z = 1 + (1 + 0) F(z) -{ 0 }-> 1 + +'(z0, z1') :|: z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' F(z) -{ 0 }-> 1 + +'(z0, 0) :|: z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 F(z) -{ 0 }-> 1 + +'(z0, 0) :|: z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, z1) :|: z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + +'(0, z1) :|: z = 1 + (1 + 0), v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + +'(0, q(h(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, 0) :|: z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + +'(0, 0) :|: z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' F(z) -{ 0 }-> 1 + +'(0, 0) :|: z = 1 + (1 + 0), v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + +'(0, 0) :|: z - 2 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' G(z) -{ 1 }-> 1 + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + H(h(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(0) + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + H(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(1 + (1 + 0) + (1 + 0)) + G(0) :|: z = 1 + 0 G(z) -{ 1 }-> 1 + +'(z0, z1') + G(0) :|: z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' G(z) -{ 1 }-> 1 + +'(z0, 0) + G(0) :|: z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 G(z) -{ 1 }-> 1 + +'(z0, 0) + G(0) :|: z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, z1) + G(0) :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + +'(0, z1) + G(0) :|: z = 1 + 0, v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + +'(0, q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, 0) + G(0) :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + +'(0, 0) + G(0) :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' G(z) -{ 1 }-> 1 + +'(0, 0) + G(0) :|: z = 1 + 0, v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + +'(0, 0) + G(z - 1) :|: z - 1 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' H(z) -{ 1 }-> 1 + +'(z011, z11) :|: z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + +'(z011, 0) :|: z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + +'(z09, z1') :|: z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + +'(z09, 0) :|: z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + +'(0, z1'') :|: z = 1 + z010 + z1'', z010 >= 0, z1'' >= 0 H(z) -{ 1 }-> 1 + +'(0, z12) :|: z = 1 + z012 + z12, z012 >= 0, z12 >= 0 H(z) -{ 1 }-> 1 + +'(0, 0) :|: z >= 0 g(z) -{ 0 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(0) :|: z - 1 >= 0 g(z) -{ 0 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 0 }-> 0 :|: z >= 0 g(z) -{ 0 }-> 1 + plus(p(g(z - 1)), q(g(z - 1))) + p(g(z - 1)) :|: z - 1 >= 0 g(z) -{ 0 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 0 }-> 0 :|: z >= 0 h(z) -{ 0 }-> 1 + plus(z027, z13) + z0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(z027, z13) + 0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + plus(z027, 0) + z0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(z027, 0) + 0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + plus(0, z14) + z0 :|: z = 1 + z028 + z14, z028 >= 0, z14 >= 0, z1 >= 0, z0 >= 0, 1 + z028 + z14 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(0, z14) + 0 :|: z = 1 + z028 + z14, z028 >= 0, z14 >= 0, v0 >= 0, 1 + z028 + z14 = v0 h(z) -{ 0 }-> 1 + plus(0, 0) + z0' :|: z >= 0, z1 >= 0, z0' >= 0, z = 1 + z0' + z1 h(z) -{ 0 }-> 1 + plus(0, 0) + 0 :|: z >= 0 p(z) -{ 0 }-> z0 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 0 }-> 1 + plus(z, z' - 1) :|: z' - 1 >= 0, z >= 0 q(z) -{ 0 }-> z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {+'}, {q}, {plus}, {p}, {H}, {h}, {g}, {F}, {G} Previous analysis results are: +': runtime: ?, size: O(1) [0] ---------------------------------------- (63) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: +' after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: z' ---------------------------------------- (64) Obligation: Complexity RNTS consisting of the following rules: +'(z, z') -{ 1 }-> 1 + +'(z, z' - 1) :|: z' - 1 >= 0, z >= 0 F(z) -{ 0 }-> 0 :|: z >= 0 F(z) -{ 0 }-> 1 + H(h(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(0) :|: z - 2 >= 0 F(z) -{ 0 }-> 1 + H(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(1 + (1 + 0) + (1 + 0)) :|: z = 1 + (1 + 0) F(z) -{ 0 }-> 1 + +'(z0, z1') :|: z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' F(z) -{ 0 }-> 1 + +'(z0, 0) :|: z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 F(z) -{ 0 }-> 1 + +'(z0, 0) :|: z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, z1) :|: z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + +'(0, z1) :|: z = 1 + (1 + 0), v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + +'(0, q(h(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, 0) :|: z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + +'(0, 0) :|: z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' F(z) -{ 0 }-> 1 + +'(0, 0) :|: z = 1 + (1 + 0), v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + +'(0, 0) :|: z - 2 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' G(z) -{ 1 }-> 1 + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + H(h(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(0) + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + H(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(1 + (1 + 0) + (1 + 0)) + G(0) :|: z = 1 + 0 G(z) -{ 1 }-> 1 + +'(z0, z1') + G(0) :|: z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' G(z) -{ 1 }-> 1 + +'(z0, 0) + G(0) :|: z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 G(z) -{ 1 }-> 1 + +'(z0, 0) + G(0) :|: z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, z1) + G(0) :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + +'(0, z1) + G(0) :|: z = 1 + 0, v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + +'(0, q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, 0) + G(0) :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + +'(0, 0) + G(0) :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' G(z) -{ 1 }-> 1 + +'(0, 0) + G(0) :|: z = 1 + 0, v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + +'(0, 0) + G(z - 1) :|: z - 1 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' H(z) -{ 1 }-> 1 + +'(z011, z11) :|: z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + +'(z011, 0) :|: z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + +'(z09, z1') :|: z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + +'(z09, 0) :|: z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + +'(0, z1'') :|: z = 1 + z010 + z1'', z010 >= 0, z1'' >= 0 H(z) -{ 1 }-> 1 + +'(0, z12) :|: z = 1 + z012 + z12, z012 >= 0, z12 >= 0 H(z) -{ 1 }-> 1 + +'(0, 0) :|: z >= 0 g(z) -{ 0 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(0) :|: z - 1 >= 0 g(z) -{ 0 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 0 }-> 0 :|: z >= 0 g(z) -{ 0 }-> 1 + plus(p(g(z - 1)), q(g(z - 1))) + p(g(z - 1)) :|: z - 1 >= 0 g(z) -{ 0 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 0 }-> 0 :|: z >= 0 h(z) -{ 0 }-> 1 + plus(z027, z13) + z0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(z027, z13) + 0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + plus(z027, 0) + z0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(z027, 0) + 0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + plus(0, z14) + z0 :|: z = 1 + z028 + z14, z028 >= 0, z14 >= 0, z1 >= 0, z0 >= 0, 1 + z028 + z14 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(0, z14) + 0 :|: z = 1 + z028 + z14, z028 >= 0, z14 >= 0, v0 >= 0, 1 + z028 + z14 = v0 h(z) -{ 0 }-> 1 + plus(0, 0) + z0' :|: z >= 0, z1 >= 0, z0' >= 0, z = 1 + z0' + z1 h(z) -{ 0 }-> 1 + plus(0, 0) + 0 :|: z >= 0 p(z) -{ 0 }-> z0 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 0 }-> 1 + plus(z, z' - 1) :|: z' - 1 >= 0, z >= 0 q(z) -{ 0 }-> z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {q}, {plus}, {p}, {H}, {h}, {g}, {F}, {G} Previous analysis results are: +': runtime: O(n^1) [z'], 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: +'(z, z') -{ z' }-> 1 + s :|: s >= 0, s <= 0, z' - 1 >= 0, z >= 0 F(z) -{ 0 }-> 0 :|: z >= 0 F(z) -{ z1' }-> 1 + s15 :|: s15 >= 0, s15 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' F(z) -{ 0 }-> 1 + s16 :|: s16 >= 0, s16 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 F(z) -{ z1 }-> 1 + s17 :|: s17 >= 0, s17 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s18 :|: s18 >= 0, s18 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s19 :|: s19 >= 0, s19 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + s20 :|: s20 >= 0, s20 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' F(z) -{ z1 }-> 1 + s21 :|: s21 >= 0, s21 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s22 :|: s22 >= 0, s22 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s23 :|: s23 >= 0, s23 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' F(z) -{ 0 }-> 1 + H(h(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(0) :|: z - 2 >= 0 F(z) -{ 0 }-> 1 + H(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(1 + (1 + 0) + (1 + 0)) :|: z = 1 + (1 + 0) F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(h(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + s10 + G(0) :|: s10 >= 0, s10 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + s11 + G(0) :|: s11 >= 0, s11 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' G(z) -{ 1 + z1 }-> 1 + s12 + G(0) :|: s12 >= 0, s12 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s13 + G(0) :|: s13 >= 0, s13 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + s14 + G(z - 1) :|: s14 >= 0, s14 <= 0, z - 1 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' G(z) -{ 1 + z1' }-> 1 + s6 + G(0) :|: s6 >= 0, s6 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' G(z) -{ 1 }-> 1 + s7 + G(0) :|: s7 >= 0, s7 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 G(z) -{ 1 + z1 }-> 1 + s8 + G(0) :|: s8 >= 0, s8 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s9 + G(0) :|: s9 >= 0, s9 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + H(h(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(0) + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + H(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(1 + (1 + 0) + (1 + 0)) + G(0) :|: z = 1 + 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 H(z) -{ 1 + z1' }-> 1 + s' :|: s' >= 0, s' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + s'' :|: s'' >= 0, s'' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 + z1'' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z = 1 + z010 + z1'', z010 >= 0, z1'' >= 0 H(z) -{ 1 }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z >= 0 H(z) -{ 1 + z11 }-> 1 + s3 :|: s3 >= 0, s3 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + s4 :|: s4 >= 0, s4 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 + z12 }-> 1 + s5 :|: s5 >= 0, s5 <= 0, z = 1 + z012 + z12, z012 >= 0, z12 >= 0 g(z) -{ 0 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(0) :|: z - 1 >= 0 g(z) -{ 0 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 0 }-> 0 :|: z >= 0 g(z) -{ 0 }-> 1 + plus(p(g(z - 1)), q(g(z - 1))) + p(g(z - 1)) :|: z - 1 >= 0 g(z) -{ 0 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 0 }-> 0 :|: z >= 0 h(z) -{ 0 }-> 1 + plus(z027, z13) + z0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(z027, z13) + 0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + plus(z027, 0) + z0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(z027, 0) + 0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + plus(0, z14) + z0 :|: z = 1 + z028 + z14, z028 >= 0, z14 >= 0, z1 >= 0, z0 >= 0, 1 + z028 + z14 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(0, z14) + 0 :|: z = 1 + z028 + z14, z028 >= 0, z14 >= 0, v0 >= 0, 1 + z028 + z14 = v0 h(z) -{ 0 }-> 1 + plus(0, 0) + z0' :|: z >= 0, z1 >= 0, z0' >= 0, z = 1 + z0' + z1 h(z) -{ 0 }-> 1 + plus(0, 0) + 0 :|: z >= 0 p(z) -{ 0 }-> z0 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 0 }-> 1 + plus(z, z' - 1) :|: z' - 1 >= 0, z >= 0 q(z) -{ 0 }-> z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {q}, {plus}, {p}, {H}, {h}, {g}, {F}, {G} Previous analysis results are: +': runtime: O(n^1) [z'], size: O(1) [0] ---------------------------------------- (67) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using KoAT for: q after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: z ---------------------------------------- (68) Obligation: Complexity RNTS consisting of the following rules: +'(z, z') -{ z' }-> 1 + s :|: s >= 0, s <= 0, z' - 1 >= 0, z >= 0 F(z) -{ 0 }-> 0 :|: z >= 0 F(z) -{ z1' }-> 1 + s15 :|: s15 >= 0, s15 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' F(z) -{ 0 }-> 1 + s16 :|: s16 >= 0, s16 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 F(z) -{ z1 }-> 1 + s17 :|: s17 >= 0, s17 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s18 :|: s18 >= 0, s18 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s19 :|: s19 >= 0, s19 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + s20 :|: s20 >= 0, s20 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' F(z) -{ z1 }-> 1 + s21 :|: s21 >= 0, s21 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s22 :|: s22 >= 0, s22 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s23 :|: s23 >= 0, s23 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' F(z) -{ 0 }-> 1 + H(h(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(0) :|: z - 2 >= 0 F(z) -{ 0 }-> 1 + H(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(1 + (1 + 0) + (1 + 0)) :|: z = 1 + (1 + 0) F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(h(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + s10 + G(0) :|: s10 >= 0, s10 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + s11 + G(0) :|: s11 >= 0, s11 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' G(z) -{ 1 + z1 }-> 1 + s12 + G(0) :|: s12 >= 0, s12 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s13 + G(0) :|: s13 >= 0, s13 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + s14 + G(z - 1) :|: s14 >= 0, s14 <= 0, z - 1 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' G(z) -{ 1 + z1' }-> 1 + s6 + G(0) :|: s6 >= 0, s6 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' G(z) -{ 1 }-> 1 + s7 + G(0) :|: s7 >= 0, s7 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 G(z) -{ 1 + z1 }-> 1 + s8 + G(0) :|: s8 >= 0, s8 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s9 + G(0) :|: s9 >= 0, s9 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + H(h(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(0) + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + H(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(1 + (1 + 0) + (1 + 0)) + G(0) :|: z = 1 + 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 H(z) -{ 1 + z1' }-> 1 + s' :|: s' >= 0, s' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + s'' :|: s'' >= 0, s'' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 + z1'' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z = 1 + z010 + z1'', z010 >= 0, z1'' >= 0 H(z) -{ 1 }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z >= 0 H(z) -{ 1 + z11 }-> 1 + s3 :|: s3 >= 0, s3 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + s4 :|: s4 >= 0, s4 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 + z12 }-> 1 + s5 :|: s5 >= 0, s5 <= 0, z = 1 + z012 + z12, z012 >= 0, z12 >= 0 g(z) -{ 0 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(0) :|: z - 1 >= 0 g(z) -{ 0 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 0 }-> 0 :|: z >= 0 g(z) -{ 0 }-> 1 + plus(p(g(z - 1)), q(g(z - 1))) + p(g(z - 1)) :|: z - 1 >= 0 g(z) -{ 0 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 0 }-> 0 :|: z >= 0 h(z) -{ 0 }-> 1 + plus(z027, z13) + z0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(z027, z13) + 0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + plus(z027, 0) + z0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(z027, 0) + 0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + plus(0, z14) + z0 :|: z = 1 + z028 + z14, z028 >= 0, z14 >= 0, z1 >= 0, z0 >= 0, 1 + z028 + z14 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(0, z14) + 0 :|: z = 1 + z028 + z14, z028 >= 0, z14 >= 0, v0 >= 0, 1 + z028 + z14 = v0 h(z) -{ 0 }-> 1 + plus(0, 0) + z0' :|: z >= 0, z1 >= 0, z0' >= 0, z = 1 + z0' + z1 h(z) -{ 0 }-> 1 + plus(0, 0) + 0 :|: z >= 0 p(z) -{ 0 }-> z0 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 0 }-> 1 + plus(z, z' - 1) :|: z' - 1 >= 0, z >= 0 q(z) -{ 0 }-> z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {q}, {plus}, {p}, {H}, {h}, {g}, {F}, {G} Previous analysis results are: +': runtime: O(n^1) [z'], size: O(1) [0] q: runtime: ?, size: O(n^1) [z] ---------------------------------------- (69) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: q after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (70) Obligation: Complexity RNTS consisting of the following rules: +'(z, z') -{ z' }-> 1 + s :|: s >= 0, s <= 0, z' - 1 >= 0, z >= 0 F(z) -{ 0 }-> 0 :|: z >= 0 F(z) -{ z1' }-> 1 + s15 :|: s15 >= 0, s15 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' F(z) -{ 0 }-> 1 + s16 :|: s16 >= 0, s16 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 F(z) -{ z1 }-> 1 + s17 :|: s17 >= 0, s17 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s18 :|: s18 >= 0, s18 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s19 :|: s19 >= 0, s19 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + s20 :|: s20 >= 0, s20 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' F(z) -{ z1 }-> 1 + s21 :|: s21 >= 0, s21 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s22 :|: s22 >= 0, s22 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s23 :|: s23 >= 0, s23 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' F(z) -{ 0 }-> 1 + H(h(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(0) :|: z - 2 >= 0 F(z) -{ 0 }-> 1 + H(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(1 + (1 + 0) + (1 + 0)) :|: z = 1 + (1 + 0) F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(h(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + s10 + G(0) :|: s10 >= 0, s10 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + s11 + G(0) :|: s11 >= 0, s11 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' G(z) -{ 1 + z1 }-> 1 + s12 + G(0) :|: s12 >= 0, s12 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s13 + G(0) :|: s13 >= 0, s13 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + s14 + G(z - 1) :|: s14 >= 0, s14 <= 0, z - 1 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' G(z) -{ 1 + z1' }-> 1 + s6 + G(0) :|: s6 >= 0, s6 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' G(z) -{ 1 }-> 1 + s7 + G(0) :|: s7 >= 0, s7 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 G(z) -{ 1 + z1 }-> 1 + s8 + G(0) :|: s8 >= 0, s8 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s9 + G(0) :|: s9 >= 0, s9 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + H(h(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(0) + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + H(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(1 + (1 + 0) + (1 + 0)) + G(0) :|: z = 1 + 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 H(z) -{ 1 + z1' }-> 1 + s' :|: s' >= 0, s' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + s'' :|: s'' >= 0, s'' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 + z1'' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z = 1 + z010 + z1'', z010 >= 0, z1'' >= 0 H(z) -{ 1 }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z >= 0 H(z) -{ 1 + z11 }-> 1 + s3 :|: s3 >= 0, s3 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + s4 :|: s4 >= 0, s4 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 + z12 }-> 1 + s5 :|: s5 >= 0, s5 <= 0, z = 1 + z012 + z12, z012 >= 0, z12 >= 0 g(z) -{ 0 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(0) :|: z - 1 >= 0 g(z) -{ 0 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 0 }-> 0 :|: z >= 0 g(z) -{ 0 }-> 1 + plus(p(g(z - 1)), q(g(z - 1))) + p(g(z - 1)) :|: z - 1 >= 0 g(z) -{ 0 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 0 }-> 0 :|: z >= 0 h(z) -{ 0 }-> 1 + plus(z027, z13) + z0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(z027, z13) + 0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + plus(z027, 0) + z0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(z027, 0) + 0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + plus(0, z14) + z0 :|: z = 1 + z028 + z14, z028 >= 0, z14 >= 0, z1 >= 0, z0 >= 0, 1 + z028 + z14 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(0, z14) + 0 :|: z = 1 + z028 + z14, z028 >= 0, z14 >= 0, v0 >= 0, 1 + z028 + z14 = v0 h(z) -{ 0 }-> 1 + plus(0, 0) + z0' :|: z >= 0, z1 >= 0, z0' >= 0, z = 1 + z0' + z1 h(z) -{ 0 }-> 1 + plus(0, 0) + 0 :|: z >= 0 p(z) -{ 0 }-> z0 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 0 }-> 1 + plus(z, z' - 1) :|: z' - 1 >= 0, z >= 0 q(z) -{ 0 }-> z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {plus}, {p}, {H}, {h}, {g}, {F}, {G} Previous analysis results are: +': runtime: O(n^1) [z'], size: O(1) [0] q: runtime: O(1) [0], size: O(n^1) [z] ---------------------------------------- (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: +'(z, z') -{ z' }-> 1 + s :|: s >= 0, s <= 0, z' - 1 >= 0, z >= 0 F(z) -{ 0 }-> 0 :|: z >= 0 F(z) -{ z1' }-> 1 + s15 :|: s15 >= 0, s15 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' F(z) -{ 0 }-> 1 + s16 :|: s16 >= 0, s16 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 F(z) -{ z1 }-> 1 + s17 :|: s17 >= 0, s17 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s18 :|: s18 >= 0, s18 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s19 :|: s19 >= 0, s19 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + s20 :|: s20 >= 0, s20 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' F(z) -{ z1 }-> 1 + s21 :|: s21 >= 0, s21 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s22 :|: s22 >= 0, s22 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s23 :|: s23 >= 0, s23 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' F(z) -{ 0 }-> 1 + H(h(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(0) :|: z - 2 >= 0 F(z) -{ 0 }-> 1 + H(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(1 + (1 + 0) + (1 + 0)) :|: z = 1 + (1 + 0) F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(h(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + s10 + G(0) :|: s10 >= 0, s10 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + s11 + G(0) :|: s11 >= 0, s11 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' G(z) -{ 1 + z1 }-> 1 + s12 + G(0) :|: s12 >= 0, s12 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s13 + G(0) :|: s13 >= 0, s13 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + s14 + G(z - 1) :|: s14 >= 0, s14 <= 0, z - 1 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' G(z) -{ 1 + z1' }-> 1 + s6 + G(0) :|: s6 >= 0, s6 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' G(z) -{ 1 }-> 1 + s7 + G(0) :|: s7 >= 0, s7 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 G(z) -{ 1 + z1 }-> 1 + s8 + G(0) :|: s8 >= 0, s8 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s9 + G(0) :|: s9 >= 0, s9 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + H(h(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(0) + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + H(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(1 + (1 + 0) + (1 + 0)) + G(0) :|: z = 1 + 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 H(z) -{ 1 + z1' }-> 1 + s' :|: s' >= 0, s' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + s'' :|: s'' >= 0, s'' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 + z1'' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z = 1 + z010 + z1'', z010 >= 0, z1'' >= 0 H(z) -{ 1 }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z >= 0 H(z) -{ 1 + z11 }-> 1 + s3 :|: s3 >= 0, s3 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + s4 :|: s4 >= 0, s4 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 + z12 }-> 1 + s5 :|: s5 >= 0, s5 <= 0, z = 1 + z012 + z12, z012 >= 0, z12 >= 0 g(z) -{ 0 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(0) :|: z - 1 >= 0 g(z) -{ 0 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 0 }-> 0 :|: z >= 0 g(z) -{ 0 }-> 1 + plus(p(g(z - 1)), q(g(z - 1))) + p(g(z - 1)) :|: z - 1 >= 0 g(z) -{ 0 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 0 }-> 0 :|: z >= 0 h(z) -{ 0 }-> 1 + plus(z027, z13) + z0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(z027, z13) + 0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + plus(z027, 0) + z0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(z027, 0) + 0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + plus(0, z14) + z0 :|: z = 1 + z028 + z14, z028 >= 0, z14 >= 0, z1 >= 0, z0 >= 0, 1 + z028 + z14 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(0, z14) + 0 :|: z = 1 + z028 + z14, z028 >= 0, z14 >= 0, v0 >= 0, 1 + z028 + z14 = v0 h(z) -{ 0 }-> 1 + plus(0, 0) + z0' :|: z >= 0, z1 >= 0, z0' >= 0, z = 1 + z0' + z1 h(z) -{ 0 }-> 1 + plus(0, 0) + 0 :|: z >= 0 p(z) -{ 0 }-> z0 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 0 }-> 1 + plus(z, z' - 1) :|: z' - 1 >= 0, z >= 0 q(z) -{ 0 }-> z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {plus}, {p}, {H}, {h}, {g}, {F}, {G} Previous analysis results are: +': runtime: O(n^1) [z'], size: O(1) [0] q: runtime: O(1) [0], size: O(n^1) [z] ---------------------------------------- (73) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: plus after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: z + z' ---------------------------------------- (74) Obligation: Complexity RNTS consisting of the following rules: +'(z, z') -{ z' }-> 1 + s :|: s >= 0, s <= 0, z' - 1 >= 0, z >= 0 F(z) -{ 0 }-> 0 :|: z >= 0 F(z) -{ z1' }-> 1 + s15 :|: s15 >= 0, s15 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' F(z) -{ 0 }-> 1 + s16 :|: s16 >= 0, s16 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 F(z) -{ z1 }-> 1 + s17 :|: s17 >= 0, s17 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s18 :|: s18 >= 0, s18 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s19 :|: s19 >= 0, s19 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + s20 :|: s20 >= 0, s20 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' F(z) -{ z1 }-> 1 + s21 :|: s21 >= 0, s21 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s22 :|: s22 >= 0, s22 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s23 :|: s23 >= 0, s23 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' F(z) -{ 0 }-> 1 + H(h(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(0) :|: z - 2 >= 0 F(z) -{ 0 }-> 1 + H(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(1 + (1 + 0) + (1 + 0)) :|: z = 1 + (1 + 0) F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(h(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + s10 + G(0) :|: s10 >= 0, s10 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + s11 + G(0) :|: s11 >= 0, s11 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' G(z) -{ 1 + z1 }-> 1 + s12 + G(0) :|: s12 >= 0, s12 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s13 + G(0) :|: s13 >= 0, s13 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + s14 + G(z - 1) :|: s14 >= 0, s14 <= 0, z - 1 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' G(z) -{ 1 + z1' }-> 1 + s6 + G(0) :|: s6 >= 0, s6 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' G(z) -{ 1 }-> 1 + s7 + G(0) :|: s7 >= 0, s7 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 G(z) -{ 1 + z1 }-> 1 + s8 + G(0) :|: s8 >= 0, s8 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s9 + G(0) :|: s9 >= 0, s9 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + H(h(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(0) + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + H(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(1 + (1 + 0) + (1 + 0)) + G(0) :|: z = 1 + 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 H(z) -{ 1 + z1' }-> 1 + s' :|: s' >= 0, s' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + s'' :|: s'' >= 0, s'' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 + z1'' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z = 1 + z010 + z1'', z010 >= 0, z1'' >= 0 H(z) -{ 1 }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z >= 0 H(z) -{ 1 + z11 }-> 1 + s3 :|: s3 >= 0, s3 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + s4 :|: s4 >= 0, s4 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 + z12 }-> 1 + s5 :|: s5 >= 0, s5 <= 0, z = 1 + z012 + z12, z012 >= 0, z12 >= 0 g(z) -{ 0 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(0) :|: z - 1 >= 0 g(z) -{ 0 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 0 }-> 0 :|: z >= 0 g(z) -{ 0 }-> 1 + plus(p(g(z - 1)), q(g(z - 1))) + p(g(z - 1)) :|: z - 1 >= 0 g(z) -{ 0 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 0 }-> 0 :|: z >= 0 h(z) -{ 0 }-> 1 + plus(z027, z13) + z0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(z027, z13) + 0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + plus(z027, 0) + z0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(z027, 0) + 0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + plus(0, z14) + z0 :|: z = 1 + z028 + z14, z028 >= 0, z14 >= 0, z1 >= 0, z0 >= 0, 1 + z028 + z14 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(0, z14) + 0 :|: z = 1 + z028 + z14, z028 >= 0, z14 >= 0, v0 >= 0, 1 + z028 + z14 = v0 h(z) -{ 0 }-> 1 + plus(0, 0) + z0' :|: z >= 0, z1 >= 0, z0' >= 0, z = 1 + z0' + z1 h(z) -{ 0 }-> 1 + plus(0, 0) + 0 :|: z >= 0 p(z) -{ 0 }-> z0 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 0 }-> 1 + plus(z, z' - 1) :|: z' - 1 >= 0, z >= 0 q(z) -{ 0 }-> z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {plus}, {p}, {H}, {h}, {g}, {F}, {G} Previous analysis results are: +': runtime: O(n^1) [z'], size: O(1) [0] q: runtime: O(1) [0], size: O(n^1) [z] plus: runtime: ?, size: O(n^1) [z + z'] ---------------------------------------- (75) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: plus 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: +'(z, z') -{ z' }-> 1 + s :|: s >= 0, s <= 0, z' - 1 >= 0, z >= 0 F(z) -{ 0 }-> 0 :|: z >= 0 F(z) -{ z1' }-> 1 + s15 :|: s15 >= 0, s15 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' F(z) -{ 0 }-> 1 + s16 :|: s16 >= 0, s16 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 F(z) -{ z1 }-> 1 + s17 :|: s17 >= 0, s17 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s18 :|: s18 >= 0, s18 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s19 :|: s19 >= 0, s19 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + s20 :|: s20 >= 0, s20 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' F(z) -{ z1 }-> 1 + s21 :|: s21 >= 0, s21 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s22 :|: s22 >= 0, s22 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s23 :|: s23 >= 0, s23 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' F(z) -{ 0 }-> 1 + H(h(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(0) :|: z - 2 >= 0 F(z) -{ 0 }-> 1 + H(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(1 + (1 + 0) + (1 + 0)) :|: z = 1 + (1 + 0) F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(h(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + s10 + G(0) :|: s10 >= 0, s10 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + s11 + G(0) :|: s11 >= 0, s11 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' G(z) -{ 1 + z1 }-> 1 + s12 + G(0) :|: s12 >= 0, s12 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s13 + G(0) :|: s13 >= 0, s13 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + s14 + G(z - 1) :|: s14 >= 0, s14 <= 0, z - 1 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' G(z) -{ 1 + z1' }-> 1 + s6 + G(0) :|: s6 >= 0, s6 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' G(z) -{ 1 }-> 1 + s7 + G(0) :|: s7 >= 0, s7 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 G(z) -{ 1 + z1 }-> 1 + s8 + G(0) :|: s8 >= 0, s8 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s9 + G(0) :|: s9 >= 0, s9 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + H(h(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(0) + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + H(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(1 + (1 + 0) + (1 + 0)) + G(0) :|: z = 1 + 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 H(z) -{ 1 + z1' }-> 1 + s' :|: s' >= 0, s' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + s'' :|: s'' >= 0, s'' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 + z1'' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z = 1 + z010 + z1'', z010 >= 0, z1'' >= 0 H(z) -{ 1 }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z >= 0 H(z) -{ 1 + z11 }-> 1 + s3 :|: s3 >= 0, s3 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + s4 :|: s4 >= 0, s4 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 + z12 }-> 1 + s5 :|: s5 >= 0, s5 <= 0, z = 1 + z012 + z12, z012 >= 0, z12 >= 0 g(z) -{ 0 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(0) :|: z - 1 >= 0 g(z) -{ 0 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 0 }-> 0 :|: z >= 0 g(z) -{ 0 }-> 1 + plus(p(g(z - 1)), q(g(z - 1))) + p(g(z - 1)) :|: z - 1 >= 0 g(z) -{ 0 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 0 }-> 0 :|: z >= 0 h(z) -{ 0 }-> 1 + plus(z027, z13) + z0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(z027, z13) + 0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + plus(z027, 0) + z0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(z027, 0) + 0 :|: z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + plus(0, z14) + z0 :|: z = 1 + z028 + z14, z028 >= 0, z14 >= 0, z1 >= 0, z0 >= 0, 1 + z028 + z14 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + plus(0, z14) + 0 :|: z = 1 + z028 + z14, z028 >= 0, z14 >= 0, v0 >= 0, 1 + z028 + z14 = v0 h(z) -{ 0 }-> 1 + plus(0, 0) + z0' :|: z >= 0, z1 >= 0, z0' >= 0, z = 1 + z0' + z1 h(z) -{ 0 }-> 1 + plus(0, 0) + 0 :|: z >= 0 p(z) -{ 0 }-> z0 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 0 }-> 1 + plus(z, z' - 1) :|: z' - 1 >= 0, z >= 0 q(z) -{ 0 }-> z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {p}, {H}, {h}, {g}, {F}, {G} Previous analysis results are: +': runtime: O(n^1) [z'], size: O(1) [0] q: runtime: O(1) [0], size: O(n^1) [z] plus: runtime: O(1) [0], size: O(n^1) [z + z'] ---------------------------------------- (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: +'(z, z') -{ z' }-> 1 + s :|: s >= 0, s <= 0, z' - 1 >= 0, z >= 0 F(z) -{ 0 }-> 0 :|: z >= 0 F(z) -{ z1' }-> 1 + s15 :|: s15 >= 0, s15 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' F(z) -{ 0 }-> 1 + s16 :|: s16 >= 0, s16 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 F(z) -{ z1 }-> 1 + s17 :|: s17 >= 0, s17 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s18 :|: s18 >= 0, s18 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s19 :|: s19 >= 0, s19 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + s20 :|: s20 >= 0, s20 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' F(z) -{ z1 }-> 1 + s21 :|: s21 >= 0, s21 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s22 :|: s22 >= 0, s22 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s23 :|: s23 >= 0, s23 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' F(z) -{ 0 }-> 1 + H(h(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(0) :|: z - 2 >= 0 F(z) -{ 0 }-> 1 + H(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(1 + (1 + 0) + (1 + 0)) :|: z = 1 + (1 + 0) F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(h(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + s10 + G(0) :|: s10 >= 0, s10 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + s11 + G(0) :|: s11 >= 0, s11 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' G(z) -{ 1 + z1 }-> 1 + s12 + G(0) :|: s12 >= 0, s12 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s13 + G(0) :|: s13 >= 0, s13 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + s14 + G(z - 1) :|: s14 >= 0, s14 <= 0, z - 1 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' G(z) -{ 1 + z1' }-> 1 + s6 + G(0) :|: s6 >= 0, s6 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' G(z) -{ 1 }-> 1 + s7 + G(0) :|: s7 >= 0, s7 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 G(z) -{ 1 + z1 }-> 1 + s8 + G(0) :|: s8 >= 0, s8 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s9 + G(0) :|: s9 >= 0, s9 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + H(h(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(0) + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + H(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(1 + (1 + 0) + (1 + 0)) + G(0) :|: z = 1 + 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 H(z) -{ 1 + z1' }-> 1 + s' :|: s' >= 0, s' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + s'' :|: s'' >= 0, s'' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 + z1'' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z = 1 + z010 + z1'', z010 >= 0, z1'' >= 0 H(z) -{ 1 }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z >= 0 H(z) -{ 1 + z11 }-> 1 + s3 :|: s3 >= 0, s3 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + s4 :|: s4 >= 0, s4 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 + z12 }-> 1 + s5 :|: s5 >= 0, s5 <= 0, z = 1 + z012 + z12, z012 >= 0, z12 >= 0 g(z) -{ 0 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(0) :|: z - 1 >= 0 g(z) -{ 0 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 0 }-> 0 :|: z >= 0 g(z) -{ 0 }-> 1 + plus(p(g(z - 1)), q(g(z - 1))) + p(g(z - 1)) :|: z - 1 >= 0 g(z) -{ 0 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 0 }-> 0 :|: z >= 0 h(z) -{ 0 }-> 1 + s25 + z0 :|: s25 >= 0, s25 <= z027 + z13, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s26 + 0 :|: s26 >= 0, s26 <= z027 + z13, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + s27 + z0 :|: s27 >= 0, s27 <= z027 + 0, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s28 + 0 :|: s28 >= 0, s28 <= z027 + 0, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + s29 + z0 :|: s29 >= 0, s29 <= 0 + z14, z = 1 + z028 + z14, z028 >= 0, z14 >= 0, z1 >= 0, z0 >= 0, 1 + z028 + z14 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s30 + 0 :|: s30 >= 0, s30 <= 0 + z14, z = 1 + z028 + z14, z028 >= 0, z14 >= 0, v0 >= 0, 1 + z028 + z14 = v0 h(z) -{ 0 }-> 1 + s31 + z0' :|: s31 >= 0, s31 <= 0 + 0, z >= 0, z1 >= 0, z0' >= 0, z = 1 + z0' + z1 h(z) -{ 0 }-> 1 + s32 + 0 :|: s32 >= 0, s32 <= 0 + 0, z >= 0 p(z) -{ 0 }-> z0 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 0 }-> 1 + s24 :|: s24 >= 0, s24 <= z + (z' - 1), z' - 1 >= 0, z >= 0 q(z) -{ 0 }-> z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {p}, {H}, {h}, {g}, {F}, {G} Previous analysis results are: +': runtime: O(n^1) [z'], size: O(1) [0] q: runtime: O(1) [0], size: O(n^1) [z] plus: runtime: O(1) [0], size: O(n^1) [z + z'] ---------------------------------------- (79) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using KoAT for: p after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: z ---------------------------------------- (80) Obligation: Complexity RNTS consisting of the following rules: +'(z, z') -{ z' }-> 1 + s :|: s >= 0, s <= 0, z' - 1 >= 0, z >= 0 F(z) -{ 0 }-> 0 :|: z >= 0 F(z) -{ z1' }-> 1 + s15 :|: s15 >= 0, s15 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' F(z) -{ 0 }-> 1 + s16 :|: s16 >= 0, s16 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 F(z) -{ z1 }-> 1 + s17 :|: s17 >= 0, s17 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s18 :|: s18 >= 0, s18 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s19 :|: s19 >= 0, s19 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + s20 :|: s20 >= 0, s20 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' F(z) -{ z1 }-> 1 + s21 :|: s21 >= 0, s21 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s22 :|: s22 >= 0, s22 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s23 :|: s23 >= 0, s23 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' F(z) -{ 0 }-> 1 + H(h(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(0) :|: z - 2 >= 0 F(z) -{ 0 }-> 1 + H(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(1 + (1 + 0) + (1 + 0)) :|: z = 1 + (1 + 0) F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(h(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + s10 + G(0) :|: s10 >= 0, s10 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + s11 + G(0) :|: s11 >= 0, s11 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' G(z) -{ 1 + z1 }-> 1 + s12 + G(0) :|: s12 >= 0, s12 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s13 + G(0) :|: s13 >= 0, s13 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + s14 + G(z - 1) :|: s14 >= 0, s14 <= 0, z - 1 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' G(z) -{ 1 + z1' }-> 1 + s6 + G(0) :|: s6 >= 0, s6 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' G(z) -{ 1 }-> 1 + s7 + G(0) :|: s7 >= 0, s7 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 G(z) -{ 1 + z1 }-> 1 + s8 + G(0) :|: s8 >= 0, s8 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s9 + G(0) :|: s9 >= 0, s9 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + H(h(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(0) + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + H(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(1 + (1 + 0) + (1 + 0)) + G(0) :|: z = 1 + 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 H(z) -{ 1 + z1' }-> 1 + s' :|: s' >= 0, s' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + s'' :|: s'' >= 0, s'' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 + z1'' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z = 1 + z010 + z1'', z010 >= 0, z1'' >= 0 H(z) -{ 1 }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z >= 0 H(z) -{ 1 + z11 }-> 1 + s3 :|: s3 >= 0, s3 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + s4 :|: s4 >= 0, s4 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 + z12 }-> 1 + s5 :|: s5 >= 0, s5 <= 0, z = 1 + z012 + z12, z012 >= 0, z12 >= 0 g(z) -{ 0 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(0) :|: z - 1 >= 0 g(z) -{ 0 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 0 }-> 0 :|: z >= 0 g(z) -{ 0 }-> 1 + plus(p(g(z - 1)), q(g(z - 1))) + p(g(z - 1)) :|: z - 1 >= 0 g(z) -{ 0 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 0 }-> 0 :|: z >= 0 h(z) -{ 0 }-> 1 + s25 + z0 :|: s25 >= 0, s25 <= z027 + z13, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s26 + 0 :|: s26 >= 0, s26 <= z027 + z13, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + s27 + z0 :|: s27 >= 0, s27 <= z027 + 0, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s28 + 0 :|: s28 >= 0, s28 <= z027 + 0, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + s29 + z0 :|: s29 >= 0, s29 <= 0 + z14, z = 1 + z028 + z14, z028 >= 0, z14 >= 0, z1 >= 0, z0 >= 0, 1 + z028 + z14 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s30 + 0 :|: s30 >= 0, s30 <= 0 + z14, z = 1 + z028 + z14, z028 >= 0, z14 >= 0, v0 >= 0, 1 + z028 + z14 = v0 h(z) -{ 0 }-> 1 + s31 + z0' :|: s31 >= 0, s31 <= 0 + 0, z >= 0, z1 >= 0, z0' >= 0, z = 1 + z0' + z1 h(z) -{ 0 }-> 1 + s32 + 0 :|: s32 >= 0, s32 <= 0 + 0, z >= 0 p(z) -{ 0 }-> z0 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 0 }-> 1 + s24 :|: s24 >= 0, s24 <= z + (z' - 1), z' - 1 >= 0, z >= 0 q(z) -{ 0 }-> z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {p}, {H}, {h}, {g}, {F}, {G} Previous analysis results are: +': runtime: O(n^1) [z'], size: O(1) [0] q: runtime: O(1) [0], size: O(n^1) [z] plus: runtime: O(1) [0], size: O(n^1) [z + z'] p: runtime: ?, size: O(n^1) [z] ---------------------------------------- (81) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: p after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (82) Obligation: Complexity RNTS consisting of the following rules: +'(z, z') -{ z' }-> 1 + s :|: s >= 0, s <= 0, z' - 1 >= 0, z >= 0 F(z) -{ 0 }-> 0 :|: z >= 0 F(z) -{ z1' }-> 1 + s15 :|: s15 >= 0, s15 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' F(z) -{ 0 }-> 1 + s16 :|: s16 >= 0, s16 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 F(z) -{ z1 }-> 1 + s17 :|: s17 >= 0, s17 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s18 :|: s18 >= 0, s18 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s19 :|: s19 >= 0, s19 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + s20 :|: s20 >= 0, s20 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' F(z) -{ z1 }-> 1 + s21 :|: s21 >= 0, s21 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s22 :|: s22 >= 0, s22 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s23 :|: s23 >= 0, s23 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' F(z) -{ 0 }-> 1 + H(h(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(0) :|: z - 2 >= 0 F(z) -{ 0 }-> 1 + H(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(1 + (1 + 0) + (1 + 0)) :|: z = 1 + (1 + 0) F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(h(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + s10 + G(0) :|: s10 >= 0, s10 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + s11 + G(0) :|: s11 >= 0, s11 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' G(z) -{ 1 + z1 }-> 1 + s12 + G(0) :|: s12 >= 0, s12 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s13 + G(0) :|: s13 >= 0, s13 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + s14 + G(z - 1) :|: s14 >= 0, s14 <= 0, z - 1 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' G(z) -{ 1 + z1' }-> 1 + s6 + G(0) :|: s6 >= 0, s6 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' G(z) -{ 1 }-> 1 + s7 + G(0) :|: s7 >= 0, s7 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 G(z) -{ 1 + z1 }-> 1 + s8 + G(0) :|: s8 >= 0, s8 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s9 + G(0) :|: s9 >= 0, s9 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + H(h(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(0) + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + H(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(1 + (1 + 0) + (1 + 0)) + G(0) :|: z = 1 + 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 H(z) -{ 1 + z1' }-> 1 + s' :|: s' >= 0, s' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + s'' :|: s'' >= 0, s'' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 + z1'' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z = 1 + z010 + z1'', z010 >= 0, z1'' >= 0 H(z) -{ 1 }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z >= 0 H(z) -{ 1 + z11 }-> 1 + s3 :|: s3 >= 0, s3 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + s4 :|: s4 >= 0, s4 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 + z12 }-> 1 + s5 :|: s5 >= 0, s5 <= 0, z = 1 + z012 + z12, z012 >= 0, z12 >= 0 g(z) -{ 0 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(0) :|: z - 1 >= 0 g(z) -{ 0 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 0 }-> 0 :|: z >= 0 g(z) -{ 0 }-> 1 + plus(p(g(z - 1)), q(g(z - 1))) + p(g(z - 1)) :|: z - 1 >= 0 g(z) -{ 0 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 0 }-> 0 :|: z >= 0 h(z) -{ 0 }-> 1 + s25 + z0 :|: s25 >= 0, s25 <= z027 + z13, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s26 + 0 :|: s26 >= 0, s26 <= z027 + z13, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + s27 + z0 :|: s27 >= 0, s27 <= z027 + 0, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s28 + 0 :|: s28 >= 0, s28 <= z027 + 0, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + s29 + z0 :|: s29 >= 0, s29 <= 0 + z14, z = 1 + z028 + z14, z028 >= 0, z14 >= 0, z1 >= 0, z0 >= 0, 1 + z028 + z14 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s30 + 0 :|: s30 >= 0, s30 <= 0 + z14, z = 1 + z028 + z14, z028 >= 0, z14 >= 0, v0 >= 0, 1 + z028 + z14 = v0 h(z) -{ 0 }-> 1 + s31 + z0' :|: s31 >= 0, s31 <= 0 + 0, z >= 0, z1 >= 0, z0' >= 0, z = 1 + z0' + z1 h(z) -{ 0 }-> 1 + s32 + 0 :|: s32 >= 0, s32 <= 0 + 0, z >= 0 p(z) -{ 0 }-> z0 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 0 }-> 1 + s24 :|: s24 >= 0, s24 <= z + (z' - 1), z' - 1 >= 0, z >= 0 q(z) -{ 0 }-> z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {H}, {h}, {g}, {F}, {G} Previous analysis results are: +': runtime: O(n^1) [z'], size: O(1) [0] q: runtime: O(1) [0], size: O(n^1) [z] plus: runtime: O(1) [0], size: O(n^1) [z + z'] p: runtime: O(1) [0], size: O(n^1) [z] ---------------------------------------- (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: +'(z, z') -{ z' }-> 1 + s :|: s >= 0, s <= 0, z' - 1 >= 0, z >= 0 F(z) -{ 0 }-> 0 :|: z >= 0 F(z) -{ z1' }-> 1 + s15 :|: s15 >= 0, s15 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' F(z) -{ 0 }-> 1 + s16 :|: s16 >= 0, s16 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 F(z) -{ z1 }-> 1 + s17 :|: s17 >= 0, s17 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s18 :|: s18 >= 0, s18 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s19 :|: s19 >= 0, s19 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + s20 :|: s20 >= 0, s20 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' F(z) -{ z1 }-> 1 + s21 :|: s21 >= 0, s21 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s22 :|: s22 >= 0, s22 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s23 :|: s23 >= 0, s23 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' F(z) -{ 0 }-> 1 + H(h(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(0) :|: z - 2 >= 0 F(z) -{ 0 }-> 1 + H(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(1 + (1 + 0) + (1 + 0)) :|: z = 1 + (1 + 0) F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(h(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + s10 + G(0) :|: s10 >= 0, s10 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + s11 + G(0) :|: s11 >= 0, s11 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' G(z) -{ 1 + z1 }-> 1 + s12 + G(0) :|: s12 >= 0, s12 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s13 + G(0) :|: s13 >= 0, s13 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + s14 + G(z - 1) :|: s14 >= 0, s14 <= 0, z - 1 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' G(z) -{ 1 + z1' }-> 1 + s6 + G(0) :|: s6 >= 0, s6 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' G(z) -{ 1 }-> 1 + s7 + G(0) :|: s7 >= 0, s7 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 G(z) -{ 1 + z1 }-> 1 + s8 + G(0) :|: s8 >= 0, s8 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s9 + G(0) :|: s9 >= 0, s9 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + H(h(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(0) + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + H(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(1 + (1 + 0) + (1 + 0)) + G(0) :|: z = 1 + 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 H(z) -{ 1 + z1' }-> 1 + s' :|: s' >= 0, s' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + s'' :|: s'' >= 0, s'' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 + z1'' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z = 1 + z010 + z1'', z010 >= 0, z1'' >= 0 H(z) -{ 1 }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z >= 0 H(z) -{ 1 + z11 }-> 1 + s3 :|: s3 >= 0, s3 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + s4 :|: s4 >= 0, s4 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 + z12 }-> 1 + s5 :|: s5 >= 0, s5 <= 0, z = 1 + z012 + z12, z012 >= 0, z12 >= 0 g(z) -{ 0 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(0) :|: z - 1 >= 0 g(z) -{ 0 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 0 }-> 0 :|: z >= 0 g(z) -{ 0 }-> 1 + plus(p(g(z - 1)), q(g(z - 1))) + p(g(z - 1)) :|: z - 1 >= 0 g(z) -{ 0 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 0 }-> 0 :|: z >= 0 h(z) -{ 0 }-> 1 + s25 + z0 :|: s25 >= 0, s25 <= z027 + z13, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s26 + 0 :|: s26 >= 0, s26 <= z027 + z13, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + s27 + z0 :|: s27 >= 0, s27 <= z027 + 0, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s28 + 0 :|: s28 >= 0, s28 <= z027 + 0, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + s29 + z0 :|: s29 >= 0, s29 <= 0 + z14, z = 1 + z028 + z14, z028 >= 0, z14 >= 0, z1 >= 0, z0 >= 0, 1 + z028 + z14 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s30 + 0 :|: s30 >= 0, s30 <= 0 + z14, z = 1 + z028 + z14, z028 >= 0, z14 >= 0, v0 >= 0, 1 + z028 + z14 = v0 h(z) -{ 0 }-> 1 + s31 + z0' :|: s31 >= 0, s31 <= 0 + 0, z >= 0, z1 >= 0, z0' >= 0, z = 1 + z0' + z1 h(z) -{ 0 }-> 1 + s32 + 0 :|: s32 >= 0, s32 <= 0 + 0, z >= 0 p(z) -{ 0 }-> z0 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 0 }-> 1 + s24 :|: s24 >= 0, s24 <= z + (z' - 1), z' - 1 >= 0, z >= 0 q(z) -{ 0 }-> z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {H}, {h}, {g}, {F}, {G} Previous analysis results are: +': runtime: O(n^1) [z'], size: O(1) [0] q: runtime: O(1) [0], size: O(n^1) [z] plus: runtime: O(1) [0], size: O(n^1) [z + z'] p: runtime: O(1) [0], size: O(n^1) [z] ---------------------------------------- (85) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: H after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 1 ---------------------------------------- (86) Obligation: Complexity RNTS consisting of the following rules: +'(z, z') -{ z' }-> 1 + s :|: s >= 0, s <= 0, z' - 1 >= 0, z >= 0 F(z) -{ 0 }-> 0 :|: z >= 0 F(z) -{ z1' }-> 1 + s15 :|: s15 >= 0, s15 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' F(z) -{ 0 }-> 1 + s16 :|: s16 >= 0, s16 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 F(z) -{ z1 }-> 1 + s17 :|: s17 >= 0, s17 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s18 :|: s18 >= 0, s18 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s19 :|: s19 >= 0, s19 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + s20 :|: s20 >= 0, s20 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' F(z) -{ z1 }-> 1 + s21 :|: s21 >= 0, s21 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s22 :|: s22 >= 0, s22 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s23 :|: s23 >= 0, s23 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' F(z) -{ 0 }-> 1 + H(h(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(0) :|: z - 2 >= 0 F(z) -{ 0 }-> 1 + H(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(1 + (1 + 0) + (1 + 0)) :|: z = 1 + (1 + 0) F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(h(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + s10 + G(0) :|: s10 >= 0, s10 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + s11 + G(0) :|: s11 >= 0, s11 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' G(z) -{ 1 + z1 }-> 1 + s12 + G(0) :|: s12 >= 0, s12 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s13 + G(0) :|: s13 >= 0, s13 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + s14 + G(z - 1) :|: s14 >= 0, s14 <= 0, z - 1 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' G(z) -{ 1 + z1' }-> 1 + s6 + G(0) :|: s6 >= 0, s6 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' G(z) -{ 1 }-> 1 + s7 + G(0) :|: s7 >= 0, s7 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 G(z) -{ 1 + z1 }-> 1 + s8 + G(0) :|: s8 >= 0, s8 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s9 + G(0) :|: s9 >= 0, s9 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + H(h(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(0) + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + H(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(1 + (1 + 0) + (1 + 0)) + G(0) :|: z = 1 + 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 H(z) -{ 1 + z1' }-> 1 + s' :|: s' >= 0, s' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + s'' :|: s'' >= 0, s'' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 + z1'' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z = 1 + z010 + z1'', z010 >= 0, z1'' >= 0 H(z) -{ 1 }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z >= 0 H(z) -{ 1 + z11 }-> 1 + s3 :|: s3 >= 0, s3 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + s4 :|: s4 >= 0, s4 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 + z12 }-> 1 + s5 :|: s5 >= 0, s5 <= 0, z = 1 + z012 + z12, z012 >= 0, z12 >= 0 g(z) -{ 0 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(0) :|: z - 1 >= 0 g(z) -{ 0 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 0 }-> 0 :|: z >= 0 g(z) -{ 0 }-> 1 + plus(p(g(z - 1)), q(g(z - 1))) + p(g(z - 1)) :|: z - 1 >= 0 g(z) -{ 0 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 0 }-> 0 :|: z >= 0 h(z) -{ 0 }-> 1 + s25 + z0 :|: s25 >= 0, s25 <= z027 + z13, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s26 + 0 :|: s26 >= 0, s26 <= z027 + z13, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + s27 + z0 :|: s27 >= 0, s27 <= z027 + 0, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s28 + 0 :|: s28 >= 0, s28 <= z027 + 0, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + s29 + z0 :|: s29 >= 0, s29 <= 0 + z14, z = 1 + z028 + z14, z028 >= 0, z14 >= 0, z1 >= 0, z0 >= 0, 1 + z028 + z14 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s30 + 0 :|: s30 >= 0, s30 <= 0 + z14, z = 1 + z028 + z14, z028 >= 0, z14 >= 0, v0 >= 0, 1 + z028 + z14 = v0 h(z) -{ 0 }-> 1 + s31 + z0' :|: s31 >= 0, s31 <= 0 + 0, z >= 0, z1 >= 0, z0' >= 0, z = 1 + z0' + z1 h(z) -{ 0 }-> 1 + s32 + 0 :|: s32 >= 0, s32 <= 0 + 0, z >= 0 p(z) -{ 0 }-> z0 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 0 }-> 1 + s24 :|: s24 >= 0, s24 <= z + (z' - 1), z' - 1 >= 0, z >= 0 q(z) -{ 0 }-> z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {H}, {h}, {g}, {F}, {G} Previous analysis results are: +': runtime: O(n^1) [z'], size: O(1) [0] q: runtime: O(1) [0], size: O(n^1) [z] plus: runtime: O(1) [0], size: O(n^1) [z + z'] p: runtime: O(1) [0], size: O(n^1) [z] H: runtime: ?, size: O(1) [1] ---------------------------------------- (87) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: H after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 1 + z ---------------------------------------- (88) Obligation: Complexity RNTS consisting of the following rules: +'(z, z') -{ z' }-> 1 + s :|: s >= 0, s <= 0, z' - 1 >= 0, z >= 0 F(z) -{ 0 }-> 0 :|: z >= 0 F(z) -{ z1' }-> 1 + s15 :|: s15 >= 0, s15 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' F(z) -{ 0 }-> 1 + s16 :|: s16 >= 0, s16 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 F(z) -{ z1 }-> 1 + s17 :|: s17 >= 0, s17 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s18 :|: s18 >= 0, s18 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s19 :|: s19 >= 0, s19 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + s20 :|: s20 >= 0, s20 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' F(z) -{ z1 }-> 1 + s21 :|: s21 >= 0, s21 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s22 :|: s22 >= 0, s22 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s23 :|: s23 >= 0, s23 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' F(z) -{ 0 }-> 1 + H(h(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(0) :|: z - 2 >= 0 F(z) -{ 0 }-> 1 + H(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(1 + (1 + 0) + (1 + 0)) :|: z = 1 + (1 + 0) F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(h(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + s10 + G(0) :|: s10 >= 0, s10 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + s11 + G(0) :|: s11 >= 0, s11 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' G(z) -{ 1 + z1 }-> 1 + s12 + G(0) :|: s12 >= 0, s12 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s13 + G(0) :|: s13 >= 0, s13 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + s14 + G(z - 1) :|: s14 >= 0, s14 <= 0, z - 1 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' G(z) -{ 1 + z1' }-> 1 + s6 + G(0) :|: s6 >= 0, s6 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' G(z) -{ 1 }-> 1 + s7 + G(0) :|: s7 >= 0, s7 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 G(z) -{ 1 + z1 }-> 1 + s8 + G(0) :|: s8 >= 0, s8 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s9 + G(0) :|: s9 >= 0, s9 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + H(h(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(0) + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + H(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(1 + (1 + 0) + (1 + 0)) + G(0) :|: z = 1 + 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 H(z) -{ 1 + z1' }-> 1 + s' :|: s' >= 0, s' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + s'' :|: s'' >= 0, s'' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 + z1'' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z = 1 + z010 + z1'', z010 >= 0, z1'' >= 0 H(z) -{ 1 }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z >= 0 H(z) -{ 1 + z11 }-> 1 + s3 :|: s3 >= 0, s3 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + s4 :|: s4 >= 0, s4 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 + z12 }-> 1 + s5 :|: s5 >= 0, s5 <= 0, z = 1 + z012 + z12, z012 >= 0, z12 >= 0 g(z) -{ 0 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(0) :|: z - 1 >= 0 g(z) -{ 0 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 0 }-> 0 :|: z >= 0 g(z) -{ 0 }-> 1 + plus(p(g(z - 1)), q(g(z - 1))) + p(g(z - 1)) :|: z - 1 >= 0 g(z) -{ 0 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 0 }-> 0 :|: z >= 0 h(z) -{ 0 }-> 1 + s25 + z0 :|: s25 >= 0, s25 <= z027 + z13, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s26 + 0 :|: s26 >= 0, s26 <= z027 + z13, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + s27 + z0 :|: s27 >= 0, s27 <= z027 + 0, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s28 + 0 :|: s28 >= 0, s28 <= z027 + 0, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + s29 + z0 :|: s29 >= 0, s29 <= 0 + z14, z = 1 + z028 + z14, z028 >= 0, z14 >= 0, z1 >= 0, z0 >= 0, 1 + z028 + z14 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s30 + 0 :|: s30 >= 0, s30 <= 0 + z14, z = 1 + z028 + z14, z028 >= 0, z14 >= 0, v0 >= 0, 1 + z028 + z14 = v0 h(z) -{ 0 }-> 1 + s31 + z0' :|: s31 >= 0, s31 <= 0 + 0, z >= 0, z1 >= 0, z0' >= 0, z = 1 + z0' + z1 h(z) -{ 0 }-> 1 + s32 + 0 :|: s32 >= 0, s32 <= 0 + 0, z >= 0 p(z) -{ 0 }-> z0 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 0 }-> 1 + s24 :|: s24 >= 0, s24 <= z + (z' - 1), z' - 1 >= 0, z >= 0 q(z) -{ 0 }-> z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {h}, {g}, {F}, {G} Previous analysis results are: +': runtime: O(n^1) [z'], size: O(1) [0] q: runtime: O(1) [0], size: O(n^1) [z] plus: runtime: O(1) [0], size: O(n^1) [z + z'] p: runtime: O(1) [0], size: O(n^1) [z] H: runtime: O(n^1) [1 + z], size: O(1) [1] ---------------------------------------- (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: +'(z, z') -{ z' }-> 1 + s :|: s >= 0, s <= 0, z' - 1 >= 0, z >= 0 F(z) -{ 0 }-> 0 :|: z >= 0 F(z) -{ z1' }-> 1 + s15 :|: s15 >= 0, s15 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' F(z) -{ 0 }-> 1 + s16 :|: s16 >= 0, s16 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 F(z) -{ z1 }-> 1 + s17 :|: s17 >= 0, s17 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s18 :|: s18 >= 0, s18 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s19 :|: s19 >= 0, s19 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + s20 :|: s20 >= 0, s20 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' F(z) -{ z1 }-> 1 + s21 :|: s21 >= 0, s21 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s22 :|: s22 >= 0, s22 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s23 :|: s23 >= 0, s23 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' F(z) -{ 4 }-> 1 + s35 :|: s35 >= 0, s35 <= 1, z = 1 + (1 + 0) F(z) -{ 1 }-> 1 + s36 :|: s36 >= 0, s36 <= 1, z - 2 >= 0 F(z) -{ 0 }-> 1 + H(h(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(h(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + s10 + G(0) :|: s10 >= 0, s10 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + s11 + G(0) :|: s11 >= 0, s11 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' G(z) -{ 1 + z1 }-> 1 + s12 + G(0) :|: s12 >= 0, s12 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s13 + G(0) :|: s13 >= 0, s13 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + s14 + G(z - 1) :|: s14 >= 0, s14 <= 0, z - 1 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' G(z) -{ 5 }-> 1 + s33 + G(0) :|: s33 >= 0, s33 <= 1, z = 1 + 0 G(z) -{ 2 }-> 1 + s34 + G(z - 1) :|: s34 >= 0, s34 <= 1, z - 1 >= 0 G(z) -{ 1 + z1' }-> 1 + s6 + G(0) :|: s6 >= 0, s6 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' G(z) -{ 1 }-> 1 + s7 + G(0) :|: s7 >= 0, s7 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 G(z) -{ 1 + z1 }-> 1 + s8 + G(0) :|: s8 >= 0, s8 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s9 + G(0) :|: s9 >= 0, s9 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + H(h(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 H(z) -{ 1 + z1' }-> 1 + s' :|: s' >= 0, s' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + s'' :|: s'' >= 0, s'' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 + z1'' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z = 1 + z010 + z1'', z010 >= 0, z1'' >= 0 H(z) -{ 1 }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z >= 0 H(z) -{ 1 + z11 }-> 1 + s3 :|: s3 >= 0, s3 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + s4 :|: s4 >= 0, s4 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 + z12 }-> 1 + s5 :|: s5 >= 0, s5 <= 0, z = 1 + z012 + z12, z012 >= 0, z12 >= 0 g(z) -{ 0 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(0) :|: z - 1 >= 0 g(z) -{ 0 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 0 }-> 0 :|: z >= 0 g(z) -{ 0 }-> 1 + plus(p(g(z - 1)), q(g(z - 1))) + p(g(z - 1)) :|: z - 1 >= 0 g(z) -{ 0 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 0 }-> 0 :|: z >= 0 h(z) -{ 0 }-> 1 + s25 + z0 :|: s25 >= 0, s25 <= z027 + z13, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s26 + 0 :|: s26 >= 0, s26 <= z027 + z13, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + s27 + z0 :|: s27 >= 0, s27 <= z027 + 0, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s28 + 0 :|: s28 >= 0, s28 <= z027 + 0, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + s29 + z0 :|: s29 >= 0, s29 <= 0 + z14, z = 1 + z028 + z14, z028 >= 0, z14 >= 0, z1 >= 0, z0 >= 0, 1 + z028 + z14 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s30 + 0 :|: s30 >= 0, s30 <= 0 + z14, z = 1 + z028 + z14, z028 >= 0, z14 >= 0, v0 >= 0, 1 + z028 + z14 = v0 h(z) -{ 0 }-> 1 + s31 + z0' :|: s31 >= 0, s31 <= 0 + 0, z >= 0, z1 >= 0, z0' >= 0, z = 1 + z0' + z1 h(z) -{ 0 }-> 1 + s32 + 0 :|: s32 >= 0, s32 <= 0 + 0, z >= 0 p(z) -{ 0 }-> z0 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 0 }-> 1 + s24 :|: s24 >= 0, s24 <= z + (z' - 1), z' - 1 >= 0, z >= 0 q(z) -{ 0 }-> z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {h}, {g}, {F}, {G} Previous analysis results are: +': runtime: O(n^1) [z'], size: O(1) [0] q: runtime: O(1) [0], size: O(n^1) [z] plus: runtime: O(1) [0], size: O(n^1) [z + z'] p: runtime: O(1) [0], size: O(n^1) [z] H: runtime: O(n^1) [1 + z], size: O(1) [1] ---------------------------------------- (91) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: h after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 1 + 2*z ---------------------------------------- (92) Obligation: Complexity RNTS consisting of the following rules: +'(z, z') -{ z' }-> 1 + s :|: s >= 0, s <= 0, z' - 1 >= 0, z >= 0 F(z) -{ 0 }-> 0 :|: z >= 0 F(z) -{ z1' }-> 1 + s15 :|: s15 >= 0, s15 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' F(z) -{ 0 }-> 1 + s16 :|: s16 >= 0, s16 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 F(z) -{ z1 }-> 1 + s17 :|: s17 >= 0, s17 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s18 :|: s18 >= 0, s18 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s19 :|: s19 >= 0, s19 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + s20 :|: s20 >= 0, s20 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' F(z) -{ z1 }-> 1 + s21 :|: s21 >= 0, s21 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s22 :|: s22 >= 0, s22 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s23 :|: s23 >= 0, s23 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' F(z) -{ 4 }-> 1 + s35 :|: s35 >= 0, s35 <= 1, z = 1 + (1 + 0) F(z) -{ 1 }-> 1 + s36 :|: s36 >= 0, s36 <= 1, z - 2 >= 0 F(z) -{ 0 }-> 1 + H(h(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(h(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + s10 + G(0) :|: s10 >= 0, s10 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + s11 + G(0) :|: s11 >= 0, s11 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' G(z) -{ 1 + z1 }-> 1 + s12 + G(0) :|: s12 >= 0, s12 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s13 + G(0) :|: s13 >= 0, s13 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + s14 + G(z - 1) :|: s14 >= 0, s14 <= 0, z - 1 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' G(z) -{ 5 }-> 1 + s33 + G(0) :|: s33 >= 0, s33 <= 1, z = 1 + 0 G(z) -{ 2 }-> 1 + s34 + G(z - 1) :|: s34 >= 0, s34 <= 1, z - 1 >= 0 G(z) -{ 1 + z1' }-> 1 + s6 + G(0) :|: s6 >= 0, s6 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' G(z) -{ 1 }-> 1 + s7 + G(0) :|: s7 >= 0, s7 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 G(z) -{ 1 + z1 }-> 1 + s8 + G(0) :|: s8 >= 0, s8 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s9 + G(0) :|: s9 >= 0, s9 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + H(h(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 H(z) -{ 1 + z1' }-> 1 + s' :|: s' >= 0, s' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + s'' :|: s'' >= 0, s'' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 + z1'' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z = 1 + z010 + z1'', z010 >= 0, z1'' >= 0 H(z) -{ 1 }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z >= 0 H(z) -{ 1 + z11 }-> 1 + s3 :|: s3 >= 0, s3 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + s4 :|: s4 >= 0, s4 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 + z12 }-> 1 + s5 :|: s5 >= 0, s5 <= 0, z = 1 + z012 + z12, z012 >= 0, z12 >= 0 g(z) -{ 0 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(0) :|: z - 1 >= 0 g(z) -{ 0 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 0 }-> 0 :|: z >= 0 g(z) -{ 0 }-> 1 + plus(p(g(z - 1)), q(g(z - 1))) + p(g(z - 1)) :|: z - 1 >= 0 g(z) -{ 0 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 0 }-> 0 :|: z >= 0 h(z) -{ 0 }-> 1 + s25 + z0 :|: s25 >= 0, s25 <= z027 + z13, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s26 + 0 :|: s26 >= 0, s26 <= z027 + z13, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + s27 + z0 :|: s27 >= 0, s27 <= z027 + 0, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s28 + 0 :|: s28 >= 0, s28 <= z027 + 0, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + s29 + z0 :|: s29 >= 0, s29 <= 0 + z14, z = 1 + z028 + z14, z028 >= 0, z14 >= 0, z1 >= 0, z0 >= 0, 1 + z028 + z14 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s30 + 0 :|: s30 >= 0, s30 <= 0 + z14, z = 1 + z028 + z14, z028 >= 0, z14 >= 0, v0 >= 0, 1 + z028 + z14 = v0 h(z) -{ 0 }-> 1 + s31 + z0' :|: s31 >= 0, s31 <= 0 + 0, z >= 0, z1 >= 0, z0' >= 0, z = 1 + z0' + z1 h(z) -{ 0 }-> 1 + s32 + 0 :|: s32 >= 0, s32 <= 0 + 0, z >= 0 p(z) -{ 0 }-> z0 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 0 }-> 1 + s24 :|: s24 >= 0, s24 <= z + (z' - 1), z' - 1 >= 0, z >= 0 q(z) -{ 0 }-> z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {h}, {g}, {F}, {G} Previous analysis results are: +': runtime: O(n^1) [z'], size: O(1) [0] q: runtime: O(1) [0], size: O(n^1) [z] plus: runtime: O(1) [0], size: O(n^1) [z + z'] p: runtime: O(1) [0], size: O(n^1) [z] H: runtime: O(n^1) [1 + z], size: O(1) [1] h: runtime: ?, size: O(n^1) [1 + 2*z] ---------------------------------------- (93) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: h after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (94) Obligation: Complexity RNTS consisting of the following rules: +'(z, z') -{ z' }-> 1 + s :|: s >= 0, s <= 0, z' - 1 >= 0, z >= 0 F(z) -{ 0 }-> 0 :|: z >= 0 F(z) -{ z1' }-> 1 + s15 :|: s15 >= 0, s15 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' F(z) -{ 0 }-> 1 + s16 :|: s16 >= 0, s16 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 F(z) -{ z1 }-> 1 + s17 :|: s17 >= 0, s17 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s18 :|: s18 >= 0, s18 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s19 :|: s19 >= 0, s19 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + s20 :|: s20 >= 0, s20 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' F(z) -{ z1 }-> 1 + s21 :|: s21 >= 0, s21 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s22 :|: s22 >= 0, s22 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s23 :|: s23 >= 0, s23 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' F(z) -{ 4 }-> 1 + s35 :|: s35 >= 0, s35 <= 1, z = 1 + (1 + 0) F(z) -{ 1 }-> 1 + s36 :|: s36 >= 0, s36 <= 1, z - 2 >= 0 F(z) -{ 0 }-> 1 + H(h(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(h(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + s10 + G(0) :|: s10 >= 0, s10 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + s11 + G(0) :|: s11 >= 0, s11 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' G(z) -{ 1 + z1 }-> 1 + s12 + G(0) :|: s12 >= 0, s12 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s13 + G(0) :|: s13 >= 0, s13 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + s14 + G(z - 1) :|: s14 >= 0, s14 <= 0, z - 1 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' G(z) -{ 5 }-> 1 + s33 + G(0) :|: s33 >= 0, s33 <= 1, z = 1 + 0 G(z) -{ 2 }-> 1 + s34 + G(z - 1) :|: s34 >= 0, s34 <= 1, z - 1 >= 0 G(z) -{ 1 + z1' }-> 1 + s6 + G(0) :|: s6 >= 0, s6 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' G(z) -{ 1 }-> 1 + s7 + G(0) :|: s7 >= 0, s7 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 G(z) -{ 1 + z1 }-> 1 + s8 + G(0) :|: s8 >= 0, s8 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s9 + G(0) :|: s9 >= 0, s9 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + H(h(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 H(z) -{ 1 + z1' }-> 1 + s' :|: s' >= 0, s' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + s'' :|: s'' >= 0, s'' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 + z1'' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z = 1 + z010 + z1'', z010 >= 0, z1'' >= 0 H(z) -{ 1 }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z >= 0 H(z) -{ 1 + z11 }-> 1 + s3 :|: s3 >= 0, s3 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + s4 :|: s4 >= 0, s4 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 + z12 }-> 1 + s5 :|: s5 >= 0, s5 <= 0, z = 1 + z012 + z12, z012 >= 0, z12 >= 0 g(z) -{ 0 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(0) :|: z - 1 >= 0 g(z) -{ 0 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 0 }-> 0 :|: z >= 0 g(z) -{ 0 }-> 1 + plus(p(g(z - 1)), q(g(z - 1))) + p(g(z - 1)) :|: z - 1 >= 0 g(z) -{ 0 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 0 }-> 0 :|: z >= 0 h(z) -{ 0 }-> 1 + s25 + z0 :|: s25 >= 0, s25 <= z027 + z13, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s26 + 0 :|: s26 >= 0, s26 <= z027 + z13, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + s27 + z0 :|: s27 >= 0, s27 <= z027 + 0, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s28 + 0 :|: s28 >= 0, s28 <= z027 + 0, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + s29 + z0 :|: s29 >= 0, s29 <= 0 + z14, z = 1 + z028 + z14, z028 >= 0, z14 >= 0, z1 >= 0, z0 >= 0, 1 + z028 + z14 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s30 + 0 :|: s30 >= 0, s30 <= 0 + z14, z = 1 + z028 + z14, z028 >= 0, z14 >= 0, v0 >= 0, 1 + z028 + z14 = v0 h(z) -{ 0 }-> 1 + s31 + z0' :|: s31 >= 0, s31 <= 0 + 0, z >= 0, z1 >= 0, z0' >= 0, z = 1 + z0' + z1 h(z) -{ 0 }-> 1 + s32 + 0 :|: s32 >= 0, s32 <= 0 + 0, z >= 0 p(z) -{ 0 }-> z0 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 0 }-> 1 + s24 :|: s24 >= 0, s24 <= z + (z' - 1), z' - 1 >= 0, z >= 0 q(z) -{ 0 }-> z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {g}, {F}, {G} Previous analysis results are: +': runtime: O(n^1) [z'], size: O(1) [0] q: runtime: O(1) [0], size: O(n^1) [z] plus: runtime: O(1) [0], size: O(n^1) [z + z'] p: runtime: O(1) [0], size: O(n^1) [z] H: runtime: O(n^1) [1 + z], size: O(1) [1] h: runtime: O(1) [0], size: O(n^1) [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: +'(z, z') -{ z' }-> 1 + s :|: s >= 0, s <= 0, z' - 1 >= 0, z >= 0 F(z) -{ 0 }-> 0 :|: z >= 0 F(z) -{ z1' }-> 1 + s15 :|: s15 >= 0, s15 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' F(z) -{ 0 }-> 1 + s16 :|: s16 >= 0, s16 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 F(z) -{ z1 }-> 1 + s17 :|: s17 >= 0, s17 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s18 :|: s18 >= 0, s18 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s19 :|: s19 >= 0, s19 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + s20 :|: s20 >= 0, s20 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' F(z) -{ z1 }-> 1 + s21 :|: s21 >= 0, s21 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s22 :|: s22 >= 0, s22 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s23 :|: s23 >= 0, s23 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' F(z) -{ 4 }-> 1 + s35 :|: s35 >= 0, s35 <= 1, z = 1 + (1 + 0) F(z) -{ 1 }-> 1 + s36 :|: s36 >= 0, s36 <= 1, z - 2 >= 0 F(z) -{ 0 }-> 1 + H(h(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(h(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + s10 + G(0) :|: s10 >= 0, s10 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + s11 + G(0) :|: s11 >= 0, s11 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' G(z) -{ 1 + z1 }-> 1 + s12 + G(0) :|: s12 >= 0, s12 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s13 + G(0) :|: s13 >= 0, s13 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + s14 + G(z - 1) :|: s14 >= 0, s14 <= 0, z - 1 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' G(z) -{ 5 }-> 1 + s33 + G(0) :|: s33 >= 0, s33 <= 1, z = 1 + 0 G(z) -{ 2 }-> 1 + s34 + G(z - 1) :|: s34 >= 0, s34 <= 1, z - 1 >= 0 G(z) -{ 1 + z1' }-> 1 + s6 + G(0) :|: s6 >= 0, s6 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' G(z) -{ 1 }-> 1 + s7 + G(0) :|: s7 >= 0, s7 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 G(z) -{ 1 + z1 }-> 1 + s8 + G(0) :|: s8 >= 0, s8 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s9 + G(0) :|: s9 >= 0, s9 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + H(h(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 H(z) -{ 1 + z1' }-> 1 + s' :|: s' >= 0, s' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + s'' :|: s'' >= 0, s'' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 + z1'' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z = 1 + z010 + z1'', z010 >= 0, z1'' >= 0 H(z) -{ 1 }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z >= 0 H(z) -{ 1 + z11 }-> 1 + s3 :|: s3 >= 0, s3 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + s4 :|: s4 >= 0, s4 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 + z12 }-> 1 + s5 :|: s5 >= 0, s5 <= 0, z = 1 + z012 + z12, z012 >= 0, z12 >= 0 g(z) -{ 0 }-> s37 :|: s37 >= 0, s37 <= 1 + 2 * (1 + (1 + 0) + (1 + 0)), z = 1 + 0 g(z) -{ 0 }-> s38 :|: s38 >= 0, s38 <= 1 + 2 * 0, z - 1 >= 0 g(z) -{ 0 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> 0 :|: z >= 0 g(z) -{ 0 }-> 1 + plus(p(g(z - 1)), q(g(z - 1))) + p(g(z - 1)) :|: z - 1 >= 0 g(z) -{ 0 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 0 }-> 0 :|: z >= 0 h(z) -{ 0 }-> 1 + s25 + z0 :|: s25 >= 0, s25 <= z027 + z13, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s26 + 0 :|: s26 >= 0, s26 <= z027 + z13, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + s27 + z0 :|: s27 >= 0, s27 <= z027 + 0, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s28 + 0 :|: s28 >= 0, s28 <= z027 + 0, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + s29 + z0 :|: s29 >= 0, s29 <= 0 + z14, z = 1 + z028 + z14, z028 >= 0, z14 >= 0, z1 >= 0, z0 >= 0, 1 + z028 + z14 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s30 + 0 :|: s30 >= 0, s30 <= 0 + z14, z = 1 + z028 + z14, z028 >= 0, z14 >= 0, v0 >= 0, 1 + z028 + z14 = v0 h(z) -{ 0 }-> 1 + s31 + z0' :|: s31 >= 0, s31 <= 0 + 0, z >= 0, z1 >= 0, z0' >= 0, z = 1 + z0' + z1 h(z) -{ 0 }-> 1 + s32 + 0 :|: s32 >= 0, s32 <= 0 + 0, z >= 0 p(z) -{ 0 }-> z0 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 0 }-> 1 + s24 :|: s24 >= 0, s24 <= z + (z' - 1), z' - 1 >= 0, z >= 0 q(z) -{ 0 }-> z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {g}, {F}, {G} Previous analysis results are: +': runtime: O(n^1) [z'], size: O(1) [0] q: runtime: O(1) [0], size: O(n^1) [z] plus: runtime: O(1) [0], size: O(n^1) [z + z'] p: runtime: O(1) [0], size: O(n^1) [z] H: runtime: O(n^1) [1 + z], size: O(1) [1] h: runtime: O(1) [0], size: O(n^1) [1 + 2*z] ---------------------------------------- (97) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using KoAT for: g after applying outer abstraction to obtain an ITS, resulting in: EXP with polynomial bound: ? ---------------------------------------- (98) Obligation: Complexity RNTS consisting of the following rules: +'(z, z') -{ z' }-> 1 + s :|: s >= 0, s <= 0, z' - 1 >= 0, z >= 0 F(z) -{ 0 }-> 0 :|: z >= 0 F(z) -{ z1' }-> 1 + s15 :|: s15 >= 0, s15 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' F(z) -{ 0 }-> 1 + s16 :|: s16 >= 0, s16 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 F(z) -{ z1 }-> 1 + s17 :|: s17 >= 0, s17 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s18 :|: s18 >= 0, s18 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s19 :|: s19 >= 0, s19 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + s20 :|: s20 >= 0, s20 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' F(z) -{ z1 }-> 1 + s21 :|: s21 >= 0, s21 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s22 :|: s22 >= 0, s22 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s23 :|: s23 >= 0, s23 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' F(z) -{ 4 }-> 1 + s35 :|: s35 >= 0, s35 <= 1, z = 1 + (1 + 0) F(z) -{ 1 }-> 1 + s36 :|: s36 >= 0, s36 <= 1, z - 2 >= 0 F(z) -{ 0 }-> 1 + H(h(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(h(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + s10 + G(0) :|: s10 >= 0, s10 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + s11 + G(0) :|: s11 >= 0, s11 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' G(z) -{ 1 + z1 }-> 1 + s12 + G(0) :|: s12 >= 0, s12 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s13 + G(0) :|: s13 >= 0, s13 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + s14 + G(z - 1) :|: s14 >= 0, s14 <= 0, z - 1 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' G(z) -{ 5 }-> 1 + s33 + G(0) :|: s33 >= 0, s33 <= 1, z = 1 + 0 G(z) -{ 2 }-> 1 + s34 + G(z - 1) :|: s34 >= 0, s34 <= 1, z - 1 >= 0 G(z) -{ 1 + z1' }-> 1 + s6 + G(0) :|: s6 >= 0, s6 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' G(z) -{ 1 }-> 1 + s7 + G(0) :|: s7 >= 0, s7 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 G(z) -{ 1 + z1 }-> 1 + s8 + G(0) :|: s8 >= 0, s8 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s9 + G(0) :|: s9 >= 0, s9 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + H(h(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 H(z) -{ 1 + z1' }-> 1 + s' :|: s' >= 0, s' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + s'' :|: s'' >= 0, s'' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 + z1'' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z = 1 + z010 + z1'', z010 >= 0, z1'' >= 0 H(z) -{ 1 }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z >= 0 H(z) -{ 1 + z11 }-> 1 + s3 :|: s3 >= 0, s3 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + s4 :|: s4 >= 0, s4 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 + z12 }-> 1 + s5 :|: s5 >= 0, s5 <= 0, z = 1 + z012 + z12, z012 >= 0, z12 >= 0 g(z) -{ 0 }-> s37 :|: s37 >= 0, s37 <= 1 + 2 * (1 + (1 + 0) + (1 + 0)), z = 1 + 0 g(z) -{ 0 }-> s38 :|: s38 >= 0, s38 <= 1 + 2 * 0, z - 1 >= 0 g(z) -{ 0 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> 0 :|: z >= 0 g(z) -{ 0 }-> 1 + plus(p(g(z - 1)), q(g(z - 1))) + p(g(z - 1)) :|: z - 1 >= 0 g(z) -{ 0 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 0 }-> 0 :|: z >= 0 h(z) -{ 0 }-> 1 + s25 + z0 :|: s25 >= 0, s25 <= z027 + z13, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s26 + 0 :|: s26 >= 0, s26 <= z027 + z13, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + s27 + z0 :|: s27 >= 0, s27 <= z027 + 0, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s28 + 0 :|: s28 >= 0, s28 <= z027 + 0, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + s29 + z0 :|: s29 >= 0, s29 <= 0 + z14, z = 1 + z028 + z14, z028 >= 0, z14 >= 0, z1 >= 0, z0 >= 0, 1 + z028 + z14 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s30 + 0 :|: s30 >= 0, s30 <= 0 + z14, z = 1 + z028 + z14, z028 >= 0, z14 >= 0, v0 >= 0, 1 + z028 + z14 = v0 h(z) -{ 0 }-> 1 + s31 + z0' :|: s31 >= 0, s31 <= 0 + 0, z >= 0, z1 >= 0, z0' >= 0, z = 1 + z0' + z1 h(z) -{ 0 }-> 1 + s32 + 0 :|: s32 >= 0, s32 <= 0 + 0, z >= 0 p(z) -{ 0 }-> z0 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 0 }-> 1 + s24 :|: s24 >= 0, s24 <= z + (z' - 1), z' - 1 >= 0, z >= 0 q(z) -{ 0 }-> z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {g}, {F}, {G} Previous analysis results are: +': runtime: O(n^1) [z'], size: O(1) [0] q: runtime: O(1) [0], size: O(n^1) [z] plus: runtime: O(1) [0], size: O(n^1) [z + z'] p: runtime: O(1) [0], size: O(n^1) [z] H: runtime: O(n^1) [1 + z], size: O(1) [1] h: runtime: O(1) [0], size: O(n^1) [1 + 2*z] g: runtime: ?, size: EXP ---------------------------------------- (99) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: g after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (100) Obligation: Complexity RNTS consisting of the following rules: +'(z, z') -{ z' }-> 1 + s :|: s >= 0, s <= 0, z' - 1 >= 0, z >= 0 F(z) -{ 0 }-> 0 :|: z >= 0 F(z) -{ z1' }-> 1 + s15 :|: s15 >= 0, s15 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' F(z) -{ 0 }-> 1 + s16 :|: s16 >= 0, s16 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 F(z) -{ z1 }-> 1 + s17 :|: s17 >= 0, s17 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s18 :|: s18 >= 0, s18 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s19 :|: s19 >= 0, s19 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + s20 :|: s20 >= 0, s20 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' F(z) -{ z1 }-> 1 + s21 :|: s21 >= 0, s21 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ 0 }-> 1 + s22 :|: s22 >= 0, s22 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s23 :|: s23 >= 0, s23 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' F(z) -{ 4 }-> 1 + s35 :|: s35 >= 0, s35 <= 1, z = 1 + (1 + 0) F(z) -{ 1 }-> 1 + s36 :|: s36 >= 0, s36 <= 1, z - 2 >= 0 F(z) -{ 0 }-> 1 + H(h(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + H(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(h(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 F(z) -{ 0 }-> 1 + +'(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), 0) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(h(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + +'(0, q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + s10 + G(0) :|: s10 >= 0, s10 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + s11 + G(0) :|: s11 >= 0, s11 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' G(z) -{ 1 + z1 }-> 1 + s12 + G(0) :|: s12 >= 0, s12 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s13 + G(0) :|: s13 >= 0, s13 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + s14 + G(z - 1) :|: s14 >= 0, s14 <= 0, z - 1 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' G(z) -{ 5 }-> 1 + s33 + G(0) :|: s33 >= 0, s33 <= 1, z = 1 + 0 G(z) -{ 2 }-> 1 + s34 + G(z - 1) :|: s34 >= 0, s34 <= 1, z - 1 >= 0 G(z) -{ 1 + z1' }-> 1 + s6 + G(0) :|: s6 >= 0, s6 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' G(z) -{ 1 }-> 1 + s7 + G(0) :|: s7 >= 0, s7 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 G(z) -{ 1 + z1 }-> 1 + s8 + G(0) :|: s8 >= 0, s8 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s9 + G(0) :|: s9 >= 0, s9 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + H(h(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + H(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(h(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0 G(z) -{ 1 }-> 1 + +'(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), 0) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(h(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + +'(0, q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + G(1 + (z - 2)) :|: z - 2 >= 0, v0 >= 0, 0 = v0 H(z) -{ 1 + z1' }-> 1 + s' :|: s' >= 0, s' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + s'' :|: s'' >= 0, s'' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 + z1'' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z = 1 + z010 + z1'', z010 >= 0, z1'' >= 0 H(z) -{ 1 }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z >= 0 H(z) -{ 1 + z11 }-> 1 + s3 :|: s3 >= 0, s3 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + s4 :|: s4 >= 0, s4 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 + z12 }-> 1 + s5 :|: s5 >= 0, s5 <= 0, z = 1 + z012 + z12, z012 >= 0, z12 >= 0 g(z) -{ 0 }-> s37 :|: s37 >= 0, s37 <= 1 + 2 * (1 + (1 + 0) + (1 + 0)), z = 1 + 0 g(z) -{ 0 }-> s38 :|: s38 >= 0, s38 <= 1 + 2 * 0, z - 1 >= 0 g(z) -{ 0 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 0 }-> 0 :|: z >= 0 g(z) -{ 0 }-> 1 + plus(p(g(z - 1)), q(g(z - 1))) + p(g(z - 1)) :|: z - 1 >= 0 g(z) -{ 0 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 0 }-> 0 :|: z >= 0 h(z) -{ 0 }-> 1 + s25 + z0 :|: s25 >= 0, s25 <= z027 + z13, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s26 + 0 :|: s26 >= 0, s26 <= z027 + z13, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + s27 + z0 :|: s27 >= 0, s27 <= z027 + 0, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s28 + 0 :|: s28 >= 0, s28 <= z027 + 0, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + s29 + z0 :|: s29 >= 0, s29 <= 0 + z14, z = 1 + z028 + z14, z028 >= 0, z14 >= 0, z1 >= 0, z0 >= 0, 1 + z028 + z14 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s30 + 0 :|: s30 >= 0, s30 <= 0 + z14, z = 1 + z028 + z14, z028 >= 0, z14 >= 0, v0 >= 0, 1 + z028 + z14 = v0 h(z) -{ 0 }-> 1 + s31 + z0' :|: s31 >= 0, s31 <= 0 + 0, z >= 0, z1 >= 0, z0' >= 0, z = 1 + z0' + z1 h(z) -{ 0 }-> 1 + s32 + 0 :|: s32 >= 0, s32 <= 0 + 0, z >= 0 p(z) -{ 0 }-> z0 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 0 }-> 1 + s24 :|: s24 >= 0, s24 <= z + (z' - 1), z' - 1 >= 0, z >= 0 q(z) -{ 0 }-> z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {F}, {G} Previous analysis results are: +': runtime: O(n^1) [z'], size: O(1) [0] q: runtime: O(1) [0], size: O(n^1) [z] plus: runtime: O(1) [0], size: O(n^1) [z + z'] p: runtime: O(1) [0], size: O(n^1) [z] H: runtime: O(n^1) [1 + z], size: O(1) [1] h: runtime: O(1) [0], size: O(n^1) [1 + 2*z] g: runtime: O(1) [0], size: EXP ---------------------------------------- (101) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (102) Obligation: Complexity RNTS consisting of the following rules: +'(z, z') -{ z' }-> 1 + s :|: s >= 0, s <= 0, z' - 1 >= 0, z >= 0 F(z) -{ 0 }-> 0 :|: z >= 0 F(z) -{ 2 + s134 + s136 }-> 1 + s137 :|: s130 >= 0, s130 <= inf28, s131 >= 0, s131 <= s130, s132 >= 0, s132 <= inf29, s133 >= 0, s133 <= s132, s134 >= 0, s134 <= s131 + s133, s135 >= 0, s135 <= inf30, s136 >= 0, s136 <= s135, s137 >= 0, s137 <= 1, z - 3 >= 0 F(z) -{ s143 }-> 1 + s144 :|: s138 >= 0, s138 <= inf31, s139 >= 0, s139 <= 1 + 2 * s138, s140 >= 0, s140 <= s139, s141 >= 0, s141 <= inf32, s142 >= 0, s142 <= 1 + 2 * s141, s143 >= 0, s143 <= s142, s144 >= 0, s144 <= 0, z - 3 >= 0 F(z) -{ z1' }-> 1 + s15 :|: s15 >= 0, s15 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' F(z) -{ s155 }-> 1 + s156 :|: s145 >= 0, s145 <= inf33, s146 >= 0, s146 <= 1 + 2 * s145, s147 >= 0, s147 <= s146, s148 >= 0, s148 <= inf34, s149 >= 0, s149 <= s148, s150 >= 0, s150 <= inf35, s151 >= 0, s151 <= s150, s152 >= 0, s152 <= s149 + s151, s153 >= 0, s153 <= inf36, s154 >= 0, s154 <= s153, s155 >= 0, s155 <= 1 + s152 + s154, s156 >= 0, s156 <= 0, z - 3 >= 0 F(z) -{ 0 }-> 1 + s16 :|: s16 >= 0, s16 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 F(z) -{ 0 }-> 1 + s160 :|: s157 >= 0, s157 <= inf37, s158 >= 0, s158 <= 1 + 2 * s157, s159 >= 0, s159 <= s158, s160 >= 0, s160 <= 0, z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ z1 }-> 1 + s17 :|: s17 >= 0, s17 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ s171 }-> 1 + s172 :|: s161 >= 0, s161 <= inf38, s162 >= 0, s162 <= s161, s163 >= 0, s163 <= inf39, s164 >= 0, s164 <= s163, s165 >= 0, s165 <= s162 + s164, s166 >= 0, s166 <= inf40, s167 >= 0, s167 <= s166, s168 >= 0, s168 <= 1 + s165 + s167, s169 >= 0, s169 <= inf41, s170 >= 0, s170 <= 1 + 2 * s169, s171 >= 0, s171 <= s170, s172 >= 0, s172 <= 0, z - 3 >= 0 F(z) -{ 0 }-> 1 + s18 :|: s18 >= 0, s18 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ s188 }-> 1 + s189 :|: s173 >= 0, s173 <= inf42, s174 >= 0, s174 <= s173, s175 >= 0, s175 <= inf43, s176 >= 0, s176 <= s175, s177 >= 0, s177 <= s174 + s176, s178 >= 0, s178 <= inf44, s179 >= 0, s179 <= s178, s180 >= 0, s180 <= 1 + s177 + s179, s181 >= 0, s181 <= inf45, s182 >= 0, s182 <= s181, s183 >= 0, s183 <= inf46, s184 >= 0, s184 <= s183, s185 >= 0, s185 <= s182 + s184, s186 >= 0, s186 <= inf47, s187 >= 0, s187 <= s186, s188 >= 0, s188 <= 1 + s185 + s187, s189 >= 0, s189 <= 0, z - 3 >= 0 F(z) -{ 0 }-> 1 + s19 :|: s19 >= 0, s19 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + s198 :|: s190 >= 0, s190 <= inf48, s191 >= 0, s191 <= s190, s192 >= 0, s192 <= inf49, s193 >= 0, s193 <= s192, s194 >= 0, s194 <= s191 + s193, s195 >= 0, s195 <= inf50, s196 >= 0, s196 <= s195, s197 >= 0, s197 <= 1 + s194 + s196, s198 >= 0, s198 <= 0, z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + s20 :|: s20 >= 0, s20 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' F(z) -{ s201 }-> 1 + s202 :|: s199 >= 0, s199 <= inf51, s200 >= 0, s200 <= 1 + 2 * s199, s201 >= 0, s201 <= s200, s202 >= 0, s202 <= 0, z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ z1 }-> 1 + s21 :|: s21 >= 0, s21 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ s210 }-> 1 + s211 :|: s203 >= 0, s203 <= inf52, s204 >= 0, s204 <= s203, s205 >= 0, s205 <= inf53, s206 >= 0, s206 <= s205, s207 >= 0, s207 <= s204 + s206, s208 >= 0, s208 <= inf54, s209 >= 0, s209 <= s208, s210 >= 0, s210 <= 1 + s207 + s209, s211 >= 0, s211 <= 0, z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + s22 :|: s22 >= 0, s22 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s23 :|: s23 >= 0, s23 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' F(z) -{ 4 }-> 1 + s35 :|: s35 >= 0, s35 <= 1, z = 1 + (1 + 0) F(z) -{ 1 }-> 1 + s36 :|: s36 >= 0, s36 <= 1, z - 2 >= 0 F(z) -{ 1 + s43 }-> 1 + s44 :|: s42 >= 0, s42 <= inf', s43 >= 0, s43 <= 1 + 2 * s42, s44 >= 0, s44 <= 1, z - 3 >= 0 G(z) -{ 1 }-> 1 + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + s10 + G(0) :|: s10 >= 0, s10 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 G(z) -{ 1 + s106 }-> 1 + s107 + G(1 + (z - 2)) :|: s91 >= 0, s91 <= inf15, s92 >= 0, s92 <= s91, s93 >= 0, s93 <= inf16, s94 >= 0, s94 <= s93, s95 >= 0, s95 <= s92 + s94, s96 >= 0, s96 <= inf17, s97 >= 0, s97 <= s96, s98 >= 0, s98 <= 1 + s95 + s97, s99 >= 0, s99 <= inf18, s100 >= 0, s100 <= s99, s101 >= 0, s101 <= inf19, s102 >= 0, s102 <= s101, s103 >= 0, s103 <= s100 + s102, s104 >= 0, s104 <= inf20, s105 >= 0, s105 <= s104, s106 >= 0, s106 <= 1 + s103 + s105, s107 >= 0, s107 <= 0, z - 2 >= 0 G(z) -{ 1 }-> 1 + s11 + G(0) :|: s11 >= 0, s11 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' G(z) -{ 1 }-> 1 + s116 + G(1 + (z - 2)) :|: s108 >= 0, s108 <= inf21, s109 >= 0, s109 <= s108, s110 >= 0, s110 <= inf22, s111 >= 0, s111 <= s110, s112 >= 0, s112 <= s109 + s111, s113 >= 0, s113 <= inf23, s114 >= 0, s114 <= s113, s115 >= 0, s115 <= 1 + s112 + s114, s116 >= 0, s116 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 + z1 }-> 1 + s12 + G(0) :|: s12 >= 0, s12 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 + s119 }-> 1 + s120 + G(1 + (z - 2)) :|: s117 >= 0, s117 <= inf24, s118 >= 0, s118 <= 1 + 2 * s117, s119 >= 0, s119 <= s118, s120 >= 0, s120 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 + s128 }-> 1 + s129 + G(1 + (z - 2)) :|: s121 >= 0, s121 <= inf25, s122 >= 0, s122 <= s121, s123 >= 0, s123 <= inf26, s124 >= 0, s124 <= s123, s125 >= 0, s125 <= s122 + s124, s126 >= 0, s126 <= inf27, s127 >= 0, s127 <= s126, s128 >= 0, s128 <= 1 + s125 + s127, s129 >= 0, s129 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + s13 + G(0) :|: s13 >= 0, s13 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + s14 + G(z - 1) :|: s14 >= 0, s14 <= 0, z - 1 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' G(z) -{ 5 }-> 1 + s33 + G(0) :|: s33 >= 0, s33 <= 1, z = 1 + 0 G(z) -{ 2 }-> 1 + s34 + G(z - 1) :|: s34 >= 0, s34 <= 1, z - 1 >= 0 G(z) -{ 2 + s40 }-> 1 + s41 + G(1 + (z - 2)) :|: s39 >= 0, s39 <= inf, s40 >= 0, s40 <= 1 + 2 * s39, s41 >= 0, s41 <= 1, z - 2 >= 0 G(z) -{ 3 + s52 + s54 }-> 1 + s55 + G(1 + (z - 2)) :|: s48 >= 0, s48 <= inf1, s49 >= 0, s49 <= s48, s50 >= 0, s50 <= inf2, s51 >= 0, s51 <= s50, s52 >= 0, s52 <= s49 + s51, s53 >= 0, s53 <= inf3, s54 >= 0, s54 <= s53, s55 >= 0, s55 <= 1, z - 2 >= 0 G(z) -{ 1 + z1' }-> 1 + s6 + G(0) :|: s6 >= 0, s6 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' G(z) -{ 1 + s61 }-> 1 + s62 + G(1 + (z - 2)) :|: s56 >= 0, s56 <= inf4, s57 >= 0, s57 <= 1 + 2 * s56, s58 >= 0, s58 <= s57, s59 >= 0, s59 <= inf5, s60 >= 0, s60 <= 1 + 2 * s59, s61 >= 0, s61 <= s60, s62 >= 0, s62 <= 0, z - 2 >= 0 G(z) -{ 1 }-> 1 + s7 + G(0) :|: s7 >= 0, s7 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 G(z) -{ 1 + s73 }-> 1 + s74 + G(1 + (z - 2)) :|: s63 >= 0, s63 <= inf6, s64 >= 0, s64 <= 1 + 2 * s63, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= inf7, s67 >= 0, s67 <= s66, s68 >= 0, s68 <= inf8, s69 >= 0, s69 <= s68, s70 >= 0, s70 <= s67 + s69, s71 >= 0, s71 <= inf9, s72 >= 0, s72 <= s71, s73 >= 0, s73 <= 1 + s70 + s72, s74 >= 0, s74 <= 0, z - 2 >= 0 G(z) -{ 1 }-> 1 + s78 + G(1 + (z - 2)) :|: s75 >= 0, s75 <= inf10, s76 >= 0, s76 <= 1 + 2 * s75, s77 >= 0, s77 <= s76, s78 >= 0, s78 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 + z1 }-> 1 + s8 + G(0) :|: s8 >= 0, s8 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s9 + G(0) :|: s9 >= 0, s9 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 + s89 }-> 1 + s90 + G(1 + (z - 2)) :|: s79 >= 0, s79 <= inf11, s80 >= 0, s80 <= s79, s81 >= 0, s81 <= inf12, s82 >= 0, s82 <= s81, s83 >= 0, s83 <= s80 + s82, s84 >= 0, s84 <= inf13, s85 >= 0, s85 <= s84, s86 >= 0, s86 <= 1 + s83 + s85, s87 >= 0, s87 <= inf14, s88 >= 0, s88 <= 1 + 2 * s87, s89 >= 0, s89 <= s88, s90 >= 0, s90 <= 0, z - 2 >= 0 H(z) -{ 1 + z1' }-> 1 + s' :|: s' >= 0, s' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + s'' :|: s'' >= 0, s'' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 + z1'' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z = 1 + z010 + z1'', z010 >= 0, z1'' >= 0 H(z) -{ 1 }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z >= 0 H(z) -{ 1 + z11 }-> 1 + s3 :|: s3 >= 0, s3 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + s4 :|: s4 >= 0, s4 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 + z12 }-> 1 + s5 :|: s5 >= 0, s5 <= 0, z = 1 + z012 + z12, z012 >= 0, z12 >= 0 g(z) -{ 0 }-> s219 :|: s212 >= 0, s212 <= inf55, s213 >= 0, s213 <= s212, s214 >= 0, s214 <= inf56, s215 >= 0, s215 <= s214, s216 >= 0, s216 <= s213 + s215, s217 >= 0, s217 <= inf57, s218 >= 0, s218 <= s217, s219 >= 0, s219 <= 1 + 2 * (1 + s216 + s218), z - 2 >= 0 g(z) -{ 0 }-> s37 :|: s37 >= 0, s37 <= 1 + 2 * (1 + (1 + 0) + (1 + 0)), z = 1 + 0 g(z) -{ 0 }-> s38 :|: s38 >= 0, s38 <= 1 + 2 * 0, z - 1 >= 0 g(z) -{ 0 }-> s47 :|: s45 >= 0, s45 <= inf'', s46 >= 0, s46 <= 1 + 2 * s45, s47 >= 0, s47 <= 1 + 2 * s46, z - 2 >= 0 g(z) -{ 0 }-> 0 :|: z >= 0 g(z) -{ 0 }-> 1 + s224 + s226 :|: s220 >= 0, s220 <= inf58, s221 >= 0, s221 <= s220, s222 >= 0, s222 <= inf59, s223 >= 0, s223 <= s222, s224 >= 0, s224 <= s221 + s223, s225 >= 0, s225 <= inf60, s226 >= 0, s226 <= s225, z - 1 >= 0 g(z) -{ 0 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 0 }-> 0 :|: z >= 0 h(z) -{ 0 }-> 1 + s25 + z0 :|: s25 >= 0, s25 <= z027 + z13, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s26 + 0 :|: s26 >= 0, s26 <= z027 + z13, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + s27 + z0 :|: s27 >= 0, s27 <= z027 + 0, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s28 + 0 :|: s28 >= 0, s28 <= z027 + 0, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + s29 + z0 :|: s29 >= 0, s29 <= 0 + z14, z = 1 + z028 + z14, z028 >= 0, z14 >= 0, z1 >= 0, z0 >= 0, 1 + z028 + z14 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s30 + 0 :|: s30 >= 0, s30 <= 0 + z14, z = 1 + z028 + z14, z028 >= 0, z14 >= 0, v0 >= 0, 1 + z028 + z14 = v0 h(z) -{ 0 }-> 1 + s31 + z0' :|: s31 >= 0, s31 <= 0 + 0, z >= 0, z1 >= 0, z0' >= 0, z = 1 + z0' + z1 h(z) -{ 0 }-> 1 + s32 + 0 :|: s32 >= 0, s32 <= 0 + 0, z >= 0 p(z) -{ 0 }-> z0 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 0 }-> 1 + s24 :|: s24 >= 0, s24 <= z + (z' - 1), z' - 1 >= 0, z >= 0 q(z) -{ 0 }-> z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {F}, {G} Previous analysis results are: +': runtime: O(n^1) [z'], size: O(1) [0] q: runtime: O(1) [0], size: O(n^1) [z] plus: runtime: O(1) [0], size: O(n^1) [z + z'] p: runtime: O(1) [0], size: O(n^1) [z] H: runtime: O(n^1) [1 + z], size: O(1) [1] h: runtime: O(1) [0], size: O(n^1) [1 + 2*z] g: runtime: O(1) [0], size: EXP ---------------------------------------- (103) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: F after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 2 ---------------------------------------- (104) Obligation: Complexity RNTS consisting of the following rules: +'(z, z') -{ z' }-> 1 + s :|: s >= 0, s <= 0, z' - 1 >= 0, z >= 0 F(z) -{ 0 }-> 0 :|: z >= 0 F(z) -{ 2 + s134 + s136 }-> 1 + s137 :|: s130 >= 0, s130 <= inf28, s131 >= 0, s131 <= s130, s132 >= 0, s132 <= inf29, s133 >= 0, s133 <= s132, s134 >= 0, s134 <= s131 + s133, s135 >= 0, s135 <= inf30, s136 >= 0, s136 <= s135, s137 >= 0, s137 <= 1, z - 3 >= 0 F(z) -{ s143 }-> 1 + s144 :|: s138 >= 0, s138 <= inf31, s139 >= 0, s139 <= 1 + 2 * s138, s140 >= 0, s140 <= s139, s141 >= 0, s141 <= inf32, s142 >= 0, s142 <= 1 + 2 * s141, s143 >= 0, s143 <= s142, s144 >= 0, s144 <= 0, z - 3 >= 0 F(z) -{ z1' }-> 1 + s15 :|: s15 >= 0, s15 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' F(z) -{ s155 }-> 1 + s156 :|: s145 >= 0, s145 <= inf33, s146 >= 0, s146 <= 1 + 2 * s145, s147 >= 0, s147 <= s146, s148 >= 0, s148 <= inf34, s149 >= 0, s149 <= s148, s150 >= 0, s150 <= inf35, s151 >= 0, s151 <= s150, s152 >= 0, s152 <= s149 + s151, s153 >= 0, s153 <= inf36, s154 >= 0, s154 <= s153, s155 >= 0, s155 <= 1 + s152 + s154, s156 >= 0, s156 <= 0, z - 3 >= 0 F(z) -{ 0 }-> 1 + s16 :|: s16 >= 0, s16 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 F(z) -{ 0 }-> 1 + s160 :|: s157 >= 0, s157 <= inf37, s158 >= 0, s158 <= 1 + 2 * s157, s159 >= 0, s159 <= s158, s160 >= 0, s160 <= 0, z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ z1 }-> 1 + s17 :|: s17 >= 0, s17 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ s171 }-> 1 + s172 :|: s161 >= 0, s161 <= inf38, s162 >= 0, s162 <= s161, s163 >= 0, s163 <= inf39, s164 >= 0, s164 <= s163, s165 >= 0, s165 <= s162 + s164, s166 >= 0, s166 <= inf40, s167 >= 0, s167 <= s166, s168 >= 0, s168 <= 1 + s165 + s167, s169 >= 0, s169 <= inf41, s170 >= 0, s170 <= 1 + 2 * s169, s171 >= 0, s171 <= s170, s172 >= 0, s172 <= 0, z - 3 >= 0 F(z) -{ 0 }-> 1 + s18 :|: s18 >= 0, s18 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ s188 }-> 1 + s189 :|: s173 >= 0, s173 <= inf42, s174 >= 0, s174 <= s173, s175 >= 0, s175 <= inf43, s176 >= 0, s176 <= s175, s177 >= 0, s177 <= s174 + s176, s178 >= 0, s178 <= inf44, s179 >= 0, s179 <= s178, s180 >= 0, s180 <= 1 + s177 + s179, s181 >= 0, s181 <= inf45, s182 >= 0, s182 <= s181, s183 >= 0, s183 <= inf46, s184 >= 0, s184 <= s183, s185 >= 0, s185 <= s182 + s184, s186 >= 0, s186 <= inf47, s187 >= 0, s187 <= s186, s188 >= 0, s188 <= 1 + s185 + s187, s189 >= 0, s189 <= 0, z - 3 >= 0 F(z) -{ 0 }-> 1 + s19 :|: s19 >= 0, s19 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + s198 :|: s190 >= 0, s190 <= inf48, s191 >= 0, s191 <= s190, s192 >= 0, s192 <= inf49, s193 >= 0, s193 <= s192, s194 >= 0, s194 <= s191 + s193, s195 >= 0, s195 <= inf50, s196 >= 0, s196 <= s195, s197 >= 0, s197 <= 1 + s194 + s196, s198 >= 0, s198 <= 0, z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + s20 :|: s20 >= 0, s20 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' F(z) -{ s201 }-> 1 + s202 :|: s199 >= 0, s199 <= inf51, s200 >= 0, s200 <= 1 + 2 * s199, s201 >= 0, s201 <= s200, s202 >= 0, s202 <= 0, z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ z1 }-> 1 + s21 :|: s21 >= 0, s21 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ s210 }-> 1 + s211 :|: s203 >= 0, s203 <= inf52, s204 >= 0, s204 <= s203, s205 >= 0, s205 <= inf53, s206 >= 0, s206 <= s205, s207 >= 0, s207 <= s204 + s206, s208 >= 0, s208 <= inf54, s209 >= 0, s209 <= s208, s210 >= 0, s210 <= 1 + s207 + s209, s211 >= 0, s211 <= 0, z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + s22 :|: s22 >= 0, s22 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s23 :|: s23 >= 0, s23 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' F(z) -{ 4 }-> 1 + s35 :|: s35 >= 0, s35 <= 1, z = 1 + (1 + 0) F(z) -{ 1 }-> 1 + s36 :|: s36 >= 0, s36 <= 1, z - 2 >= 0 F(z) -{ 1 + s43 }-> 1 + s44 :|: s42 >= 0, s42 <= inf', s43 >= 0, s43 <= 1 + 2 * s42, s44 >= 0, s44 <= 1, z - 3 >= 0 G(z) -{ 1 }-> 1 + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + s10 + G(0) :|: s10 >= 0, s10 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 G(z) -{ 1 + s106 }-> 1 + s107 + G(1 + (z - 2)) :|: s91 >= 0, s91 <= inf15, s92 >= 0, s92 <= s91, s93 >= 0, s93 <= inf16, s94 >= 0, s94 <= s93, s95 >= 0, s95 <= s92 + s94, s96 >= 0, s96 <= inf17, s97 >= 0, s97 <= s96, s98 >= 0, s98 <= 1 + s95 + s97, s99 >= 0, s99 <= inf18, s100 >= 0, s100 <= s99, s101 >= 0, s101 <= inf19, s102 >= 0, s102 <= s101, s103 >= 0, s103 <= s100 + s102, s104 >= 0, s104 <= inf20, s105 >= 0, s105 <= s104, s106 >= 0, s106 <= 1 + s103 + s105, s107 >= 0, s107 <= 0, z - 2 >= 0 G(z) -{ 1 }-> 1 + s11 + G(0) :|: s11 >= 0, s11 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' G(z) -{ 1 }-> 1 + s116 + G(1 + (z - 2)) :|: s108 >= 0, s108 <= inf21, s109 >= 0, s109 <= s108, s110 >= 0, s110 <= inf22, s111 >= 0, s111 <= s110, s112 >= 0, s112 <= s109 + s111, s113 >= 0, s113 <= inf23, s114 >= 0, s114 <= s113, s115 >= 0, s115 <= 1 + s112 + s114, s116 >= 0, s116 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 + z1 }-> 1 + s12 + G(0) :|: s12 >= 0, s12 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 + s119 }-> 1 + s120 + G(1 + (z - 2)) :|: s117 >= 0, s117 <= inf24, s118 >= 0, s118 <= 1 + 2 * s117, s119 >= 0, s119 <= s118, s120 >= 0, s120 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 + s128 }-> 1 + s129 + G(1 + (z - 2)) :|: s121 >= 0, s121 <= inf25, s122 >= 0, s122 <= s121, s123 >= 0, s123 <= inf26, s124 >= 0, s124 <= s123, s125 >= 0, s125 <= s122 + s124, s126 >= 0, s126 <= inf27, s127 >= 0, s127 <= s126, s128 >= 0, s128 <= 1 + s125 + s127, s129 >= 0, s129 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + s13 + G(0) :|: s13 >= 0, s13 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + s14 + G(z - 1) :|: s14 >= 0, s14 <= 0, z - 1 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' G(z) -{ 5 }-> 1 + s33 + G(0) :|: s33 >= 0, s33 <= 1, z = 1 + 0 G(z) -{ 2 }-> 1 + s34 + G(z - 1) :|: s34 >= 0, s34 <= 1, z - 1 >= 0 G(z) -{ 2 + s40 }-> 1 + s41 + G(1 + (z - 2)) :|: s39 >= 0, s39 <= inf, s40 >= 0, s40 <= 1 + 2 * s39, s41 >= 0, s41 <= 1, z - 2 >= 0 G(z) -{ 3 + s52 + s54 }-> 1 + s55 + G(1 + (z - 2)) :|: s48 >= 0, s48 <= inf1, s49 >= 0, s49 <= s48, s50 >= 0, s50 <= inf2, s51 >= 0, s51 <= s50, s52 >= 0, s52 <= s49 + s51, s53 >= 0, s53 <= inf3, s54 >= 0, s54 <= s53, s55 >= 0, s55 <= 1, z - 2 >= 0 G(z) -{ 1 + z1' }-> 1 + s6 + G(0) :|: s6 >= 0, s6 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' G(z) -{ 1 + s61 }-> 1 + s62 + G(1 + (z - 2)) :|: s56 >= 0, s56 <= inf4, s57 >= 0, s57 <= 1 + 2 * s56, s58 >= 0, s58 <= s57, s59 >= 0, s59 <= inf5, s60 >= 0, s60 <= 1 + 2 * s59, s61 >= 0, s61 <= s60, s62 >= 0, s62 <= 0, z - 2 >= 0 G(z) -{ 1 }-> 1 + s7 + G(0) :|: s7 >= 0, s7 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 G(z) -{ 1 + s73 }-> 1 + s74 + G(1 + (z - 2)) :|: s63 >= 0, s63 <= inf6, s64 >= 0, s64 <= 1 + 2 * s63, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= inf7, s67 >= 0, s67 <= s66, s68 >= 0, s68 <= inf8, s69 >= 0, s69 <= s68, s70 >= 0, s70 <= s67 + s69, s71 >= 0, s71 <= inf9, s72 >= 0, s72 <= s71, s73 >= 0, s73 <= 1 + s70 + s72, s74 >= 0, s74 <= 0, z - 2 >= 0 G(z) -{ 1 }-> 1 + s78 + G(1 + (z - 2)) :|: s75 >= 0, s75 <= inf10, s76 >= 0, s76 <= 1 + 2 * s75, s77 >= 0, s77 <= s76, s78 >= 0, s78 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 + z1 }-> 1 + s8 + G(0) :|: s8 >= 0, s8 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s9 + G(0) :|: s9 >= 0, s9 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 + s89 }-> 1 + s90 + G(1 + (z - 2)) :|: s79 >= 0, s79 <= inf11, s80 >= 0, s80 <= s79, s81 >= 0, s81 <= inf12, s82 >= 0, s82 <= s81, s83 >= 0, s83 <= s80 + s82, s84 >= 0, s84 <= inf13, s85 >= 0, s85 <= s84, s86 >= 0, s86 <= 1 + s83 + s85, s87 >= 0, s87 <= inf14, s88 >= 0, s88 <= 1 + 2 * s87, s89 >= 0, s89 <= s88, s90 >= 0, s90 <= 0, z - 2 >= 0 H(z) -{ 1 + z1' }-> 1 + s' :|: s' >= 0, s' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + s'' :|: s'' >= 0, s'' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 + z1'' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z = 1 + z010 + z1'', z010 >= 0, z1'' >= 0 H(z) -{ 1 }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z >= 0 H(z) -{ 1 + z11 }-> 1 + s3 :|: s3 >= 0, s3 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + s4 :|: s4 >= 0, s4 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 + z12 }-> 1 + s5 :|: s5 >= 0, s5 <= 0, z = 1 + z012 + z12, z012 >= 0, z12 >= 0 g(z) -{ 0 }-> s219 :|: s212 >= 0, s212 <= inf55, s213 >= 0, s213 <= s212, s214 >= 0, s214 <= inf56, s215 >= 0, s215 <= s214, s216 >= 0, s216 <= s213 + s215, s217 >= 0, s217 <= inf57, s218 >= 0, s218 <= s217, s219 >= 0, s219 <= 1 + 2 * (1 + s216 + s218), z - 2 >= 0 g(z) -{ 0 }-> s37 :|: s37 >= 0, s37 <= 1 + 2 * (1 + (1 + 0) + (1 + 0)), z = 1 + 0 g(z) -{ 0 }-> s38 :|: s38 >= 0, s38 <= 1 + 2 * 0, z - 1 >= 0 g(z) -{ 0 }-> s47 :|: s45 >= 0, s45 <= inf'', s46 >= 0, s46 <= 1 + 2 * s45, s47 >= 0, s47 <= 1 + 2 * s46, z - 2 >= 0 g(z) -{ 0 }-> 0 :|: z >= 0 g(z) -{ 0 }-> 1 + s224 + s226 :|: s220 >= 0, s220 <= inf58, s221 >= 0, s221 <= s220, s222 >= 0, s222 <= inf59, s223 >= 0, s223 <= s222, s224 >= 0, s224 <= s221 + s223, s225 >= 0, s225 <= inf60, s226 >= 0, s226 <= s225, z - 1 >= 0 g(z) -{ 0 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 0 }-> 0 :|: z >= 0 h(z) -{ 0 }-> 1 + s25 + z0 :|: s25 >= 0, s25 <= z027 + z13, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s26 + 0 :|: s26 >= 0, s26 <= z027 + z13, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + s27 + z0 :|: s27 >= 0, s27 <= z027 + 0, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s28 + 0 :|: s28 >= 0, s28 <= z027 + 0, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + s29 + z0 :|: s29 >= 0, s29 <= 0 + z14, z = 1 + z028 + z14, z028 >= 0, z14 >= 0, z1 >= 0, z0 >= 0, 1 + z028 + z14 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s30 + 0 :|: s30 >= 0, s30 <= 0 + z14, z = 1 + z028 + z14, z028 >= 0, z14 >= 0, v0 >= 0, 1 + z028 + z14 = v0 h(z) -{ 0 }-> 1 + s31 + z0' :|: s31 >= 0, s31 <= 0 + 0, z >= 0, z1 >= 0, z0' >= 0, z = 1 + z0' + z1 h(z) -{ 0 }-> 1 + s32 + 0 :|: s32 >= 0, s32 <= 0 + 0, z >= 0 p(z) -{ 0 }-> z0 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 0 }-> 1 + s24 :|: s24 >= 0, s24 <= z + (z' - 1), z' - 1 >= 0, z >= 0 q(z) -{ 0 }-> z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {F}, {G} Previous analysis results are: +': runtime: O(n^1) [z'], size: O(1) [0] q: runtime: O(1) [0], size: O(n^1) [z] plus: runtime: O(1) [0], size: O(n^1) [z + z'] p: runtime: O(1) [0], size: O(n^1) [z] H: runtime: O(n^1) [1 + z], size: O(1) [1] h: runtime: O(1) [0], size: O(n^1) [1 + 2*z] g: runtime: O(1) [0], size: EXP F: runtime: ?, size: O(1) [2] ---------------------------------------- (105) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: F after applying outer abstraction to obtain an ITS, resulting in: INF with polynomial bound: ? ---------------------------------------- (106) Obligation: Complexity RNTS consisting of the following rules: +'(z, z') -{ z' }-> 1 + s :|: s >= 0, s <= 0, z' - 1 >= 0, z >= 0 F(z) -{ 0 }-> 0 :|: z >= 0 F(z) -{ 2 + s134 + s136 }-> 1 + s137 :|: s130 >= 0, s130 <= inf28, s131 >= 0, s131 <= s130, s132 >= 0, s132 <= inf29, s133 >= 0, s133 <= s132, s134 >= 0, s134 <= s131 + s133, s135 >= 0, s135 <= inf30, s136 >= 0, s136 <= s135, s137 >= 0, s137 <= 1, z - 3 >= 0 F(z) -{ s143 }-> 1 + s144 :|: s138 >= 0, s138 <= inf31, s139 >= 0, s139 <= 1 + 2 * s138, s140 >= 0, s140 <= s139, s141 >= 0, s141 <= inf32, s142 >= 0, s142 <= 1 + 2 * s141, s143 >= 0, s143 <= s142, s144 >= 0, s144 <= 0, z - 3 >= 0 F(z) -{ z1' }-> 1 + s15 :|: s15 >= 0, s15 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' F(z) -{ s155 }-> 1 + s156 :|: s145 >= 0, s145 <= inf33, s146 >= 0, s146 <= 1 + 2 * s145, s147 >= 0, s147 <= s146, s148 >= 0, s148 <= inf34, s149 >= 0, s149 <= s148, s150 >= 0, s150 <= inf35, s151 >= 0, s151 <= s150, s152 >= 0, s152 <= s149 + s151, s153 >= 0, s153 <= inf36, s154 >= 0, s154 <= s153, s155 >= 0, s155 <= 1 + s152 + s154, s156 >= 0, s156 <= 0, z - 3 >= 0 F(z) -{ 0 }-> 1 + s16 :|: s16 >= 0, s16 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 F(z) -{ 0 }-> 1 + s160 :|: s157 >= 0, s157 <= inf37, s158 >= 0, s158 <= 1 + 2 * s157, s159 >= 0, s159 <= s158, s160 >= 0, s160 <= 0, z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ z1 }-> 1 + s17 :|: s17 >= 0, s17 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ s171 }-> 1 + s172 :|: s161 >= 0, s161 <= inf38, s162 >= 0, s162 <= s161, s163 >= 0, s163 <= inf39, s164 >= 0, s164 <= s163, s165 >= 0, s165 <= s162 + s164, s166 >= 0, s166 <= inf40, s167 >= 0, s167 <= s166, s168 >= 0, s168 <= 1 + s165 + s167, s169 >= 0, s169 <= inf41, s170 >= 0, s170 <= 1 + 2 * s169, s171 >= 0, s171 <= s170, s172 >= 0, s172 <= 0, z - 3 >= 0 F(z) -{ 0 }-> 1 + s18 :|: s18 >= 0, s18 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ s188 }-> 1 + s189 :|: s173 >= 0, s173 <= inf42, s174 >= 0, s174 <= s173, s175 >= 0, s175 <= inf43, s176 >= 0, s176 <= s175, s177 >= 0, s177 <= s174 + s176, s178 >= 0, s178 <= inf44, s179 >= 0, s179 <= s178, s180 >= 0, s180 <= 1 + s177 + s179, s181 >= 0, s181 <= inf45, s182 >= 0, s182 <= s181, s183 >= 0, s183 <= inf46, s184 >= 0, s184 <= s183, s185 >= 0, s185 <= s182 + s184, s186 >= 0, s186 <= inf47, s187 >= 0, s187 <= s186, s188 >= 0, s188 <= 1 + s185 + s187, s189 >= 0, s189 <= 0, z - 3 >= 0 F(z) -{ 0 }-> 1 + s19 :|: s19 >= 0, s19 <= 0, z = 1 + (1 + 0), z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + s198 :|: s190 >= 0, s190 <= inf48, s191 >= 0, s191 <= s190, s192 >= 0, s192 <= inf49, s193 >= 0, s193 <= s192, s194 >= 0, s194 <= s191 + s193, s195 >= 0, s195 <= inf50, s196 >= 0, s196 <= s195, s197 >= 0, s197 <= 1 + s194 + s196, s198 >= 0, s198 <= 0, z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + s20 :|: s20 >= 0, s20 <= 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' F(z) -{ s201 }-> 1 + s202 :|: s199 >= 0, s199 <= inf51, s200 >= 0, s200 <= 1 + 2 * s199, s201 >= 0, s201 <= s200, s202 >= 0, s202 <= 0, z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ z1 }-> 1 + s21 :|: s21 >= 0, s21 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 F(z) -{ s210 }-> 1 + s211 :|: s203 >= 0, s203 <= inf52, s204 >= 0, s204 <= s203, s205 >= 0, s205 <= inf53, s206 >= 0, s206 <= s205, s207 >= 0, s207 <= s204 + s206, s208 >= 0, s208 <= inf54, s209 >= 0, s209 <= s208, s210 >= 0, s210 <= 1 + s207 + s209, s211 >= 0, s211 <= 0, z - 3 >= 0, v0 >= 0, 0 = v0 F(z) -{ 0 }-> 1 + s22 :|: s22 >= 0, s22 <= 0, z = 1 + (1 + 0), v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' F(z) -{ 0 }-> 1 + s23 :|: s23 >= 0, s23 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' F(z) -{ 4 }-> 1 + s35 :|: s35 >= 0, s35 <= 1, z = 1 + (1 + 0) F(z) -{ 1 }-> 1 + s36 :|: s36 >= 0, s36 <= 1, z - 2 >= 0 F(z) -{ 1 + s43 }-> 1 + s44 :|: s42 >= 0, s42 <= inf', s43 >= 0, s43 <= 1 + 2 * s42, s44 >= 0, s44 <= 1, z - 3 >= 0 G(z) -{ 1 }-> 1 + G(z - 1) :|: z - 1 >= 0 G(z) -{ 1 }-> 1 + s10 + G(0) :|: s10 >= 0, s10 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 0 = v0 G(z) -{ 1 + s106 }-> 1 + s107 + G(1 + (z - 2)) :|: s91 >= 0, s91 <= inf15, s92 >= 0, s92 <= s91, s93 >= 0, s93 <= inf16, s94 >= 0, s94 <= s93, s95 >= 0, s95 <= s92 + s94, s96 >= 0, s96 <= inf17, s97 >= 0, s97 <= s96, s98 >= 0, s98 <= 1 + s95 + s97, s99 >= 0, s99 <= inf18, s100 >= 0, s100 <= s99, s101 >= 0, s101 <= inf19, s102 >= 0, s102 <= s101, s103 >= 0, s103 <= s100 + s102, s104 >= 0, s104 <= inf20, s105 >= 0, s105 <= s104, s106 >= 0, s106 <= 1 + s103 + s105, s107 >= 0, s107 <= 0, z - 2 >= 0 G(z) -{ 1 }-> 1 + s11 + G(0) :|: s11 >= 0, s11 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 0 = v0' G(z) -{ 1 }-> 1 + s116 + G(1 + (z - 2)) :|: s108 >= 0, s108 <= inf21, s109 >= 0, s109 <= s108, s110 >= 0, s110 <= inf22, s111 >= 0, s111 <= s110, s112 >= 0, s112 <= s109 + s111, s113 >= 0, s113 <= inf23, s114 >= 0, s114 <= s113, s115 >= 0, s115 <= 1 + s112 + s114, s116 >= 0, s116 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 + z1 }-> 1 + s12 + G(0) :|: s12 >= 0, s12 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 + s119 }-> 1 + s120 + G(1 + (z - 2)) :|: s117 >= 0, s117 <= inf24, s118 >= 0, s118 <= 1 + 2 * s117, s119 >= 0, s119 <= s118, s120 >= 0, s120 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 + s128 }-> 1 + s129 + G(1 + (z - 2)) :|: s121 >= 0, s121 <= inf25, s122 >= 0, s122 <= s121, s123 >= 0, s123 <= inf26, s124 >= 0, s124 <= s123, s125 >= 0, s125 <= s122 + s124, s126 >= 0, s126 <= inf27, s127 >= 0, s127 <= s126, s128 >= 0, s128 <= 1 + s125 + s127, s129 >= 0, s129 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 }-> 1 + s13 + G(0) :|: s13 >= 0, s13 <= 0, z = 1 + 0, v0 >= 0, 0 = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 }-> 1 + s14 + G(z - 1) :|: s14 >= 0, s14 <= 0, z - 1 >= 0, v0 >= 0, 0 = v0, v0' >= 0, 0 = v0' G(z) -{ 5 }-> 1 + s33 + G(0) :|: s33 >= 0, s33 <= 1, z = 1 + 0 G(z) -{ 2 }-> 1 + s34 + G(z - 1) :|: s34 >= 0, s34 <= 1, z - 1 >= 0 G(z) -{ 2 + s40 }-> 1 + s41 + G(1 + (z - 2)) :|: s39 >= 0, s39 <= inf, s40 >= 0, s40 <= 1 + 2 * s39, s41 >= 0, s41 <= 1, z - 2 >= 0 G(z) -{ 3 + s52 + s54 }-> 1 + s55 + G(1 + (z - 2)) :|: s48 >= 0, s48 <= inf1, s49 >= 0, s49 <= s48, s50 >= 0, s50 <= inf2, s51 >= 0, s51 <= s50, s52 >= 0, s52 <= s49 + s51, s53 >= 0, s53 <= inf3, s54 >= 0, s54 <= s53, s55 >= 0, s55 <= 1, z - 2 >= 0 G(z) -{ 1 + z1' }-> 1 + s6 + G(0) :|: s6 >= 0, s6 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, z1' >= 0, z0' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0' + z1' G(z) -{ 1 + s61 }-> 1 + s62 + G(1 + (z - 2)) :|: s56 >= 0, s56 <= inf4, s57 >= 0, s57 <= 1 + 2 * s56, s58 >= 0, s58 <= s57, s59 >= 0, s59 <= inf5, s60 >= 0, s60 <= 1 + 2 * s59, s61 >= 0, s61 <= s60, s62 >= 0, s62 <= 0, z - 2 >= 0 G(z) -{ 1 }-> 1 + s7 + G(0) :|: s7 >= 0, s7 <= 0, z = 1 + 0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 G(z) -{ 1 + s73 }-> 1 + s74 + G(1 + (z - 2)) :|: s63 >= 0, s63 <= inf6, s64 >= 0, s64 <= 1 + 2 * s63, s65 >= 0, s65 <= s64, s66 >= 0, s66 <= inf7, s67 >= 0, s67 <= s66, s68 >= 0, s68 <= inf8, s69 >= 0, s69 <= s68, s70 >= 0, s70 <= s67 + s69, s71 >= 0, s71 <= inf9, s72 >= 0, s72 <= s71, s73 >= 0, s73 <= 1 + s70 + s72, s74 >= 0, s74 <= 0, z - 2 >= 0 G(z) -{ 1 }-> 1 + s78 + G(1 + (z - 2)) :|: s75 >= 0, s75 <= inf10, s76 >= 0, s76 <= 1 + 2 * s75, s77 >= 0, s77 <= s76, s78 >= 0, s78 <= 0, z - 2 >= 0, v0 >= 0, 0 = v0 G(z) -{ 1 + z1 }-> 1 + s8 + G(0) :|: s8 >= 0, s8 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, z1 >= 0, z0 >= 0, 1 + (1 + 0) + (1 + 0) = 1 + z0 + z1 G(z) -{ 1 }-> 1 + s9 + G(0) :|: s9 >= 0, s9 <= 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' G(z) -{ 1 + s89 }-> 1 + s90 + G(1 + (z - 2)) :|: s79 >= 0, s79 <= inf11, s80 >= 0, s80 <= s79, s81 >= 0, s81 <= inf12, s82 >= 0, s82 <= s81, s83 >= 0, s83 <= s80 + s82, s84 >= 0, s84 <= inf13, s85 >= 0, s85 <= s84, s86 >= 0, s86 <= 1 + s83 + s85, s87 >= 0, s87 <= inf14, s88 >= 0, s88 <= 1 + 2 * s87, s89 >= 0, s89 <= s88, s90 >= 0, s90 <= 0, z - 2 >= 0 H(z) -{ 1 + z1' }-> 1 + s' :|: s' >= 0, s' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 }-> 1 + s'' :|: s'' >= 0, s'' <= 0, z = 1 + z09 + z1', z1' >= 0, z09 >= 0 H(z) -{ 1 + z1'' }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z = 1 + z010 + z1'', z010 >= 0, z1'' >= 0 H(z) -{ 1 }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z >= 0 H(z) -{ 1 + z11 }-> 1 + s3 :|: s3 >= 0, s3 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 }-> 1 + s4 :|: s4 >= 0, s4 <= 0, z = 1 + z011 + z11, z011 >= 0, z11 >= 0 H(z) -{ 1 + z12 }-> 1 + s5 :|: s5 >= 0, s5 <= 0, z = 1 + z012 + z12, z012 >= 0, z12 >= 0 g(z) -{ 0 }-> s219 :|: s212 >= 0, s212 <= inf55, s213 >= 0, s213 <= s212, s214 >= 0, s214 <= inf56, s215 >= 0, s215 <= s214, s216 >= 0, s216 <= s213 + s215, s217 >= 0, s217 <= inf57, s218 >= 0, s218 <= s217, s219 >= 0, s219 <= 1 + 2 * (1 + s216 + s218), z - 2 >= 0 g(z) -{ 0 }-> s37 :|: s37 >= 0, s37 <= 1 + 2 * (1 + (1 + 0) + (1 + 0)), z = 1 + 0 g(z) -{ 0 }-> s38 :|: s38 >= 0, s38 <= 1 + 2 * 0, z - 1 >= 0 g(z) -{ 0 }-> s47 :|: s45 >= 0, s45 <= inf'', s46 >= 0, s46 <= 1 + 2 * s45, s47 >= 0, s47 <= 1 + 2 * s46, z - 2 >= 0 g(z) -{ 0 }-> 0 :|: z >= 0 g(z) -{ 0 }-> 1 + s224 + s226 :|: s220 >= 0, s220 <= inf58, s221 >= 0, s221 <= s220, s222 >= 0, s222 <= inf59, s223 >= 0, s223 <= s222, s224 >= 0, s224 <= s221 + s223, s225 >= 0, s225 <= inf60, s226 >= 0, s226 <= s225, z - 1 >= 0 g(z) -{ 0 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 0 }-> 0 :|: z >= 0 h(z) -{ 0 }-> 1 + s25 + z0 :|: s25 >= 0, s25 <= z027 + z13, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s26 + 0 :|: s26 >= 0, s26 <= z027 + z13, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + s27 + z0 :|: s27 >= 0, s27 <= z027 + 0, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, z1 >= 0, z0 >= 0, 1 + z027 + z13 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s28 + 0 :|: s28 >= 0, s28 <= z027 + 0, z = 1 + z027 + z13, z027 >= 0, z13 >= 0, v0 >= 0, 1 + z027 + z13 = v0 h(z) -{ 0 }-> 1 + s29 + z0 :|: s29 >= 0, s29 <= 0 + z14, z = 1 + z028 + z14, z028 >= 0, z14 >= 0, z1 >= 0, z0 >= 0, 1 + z028 + z14 = 1 + z0 + z1 h(z) -{ 0 }-> 1 + s30 + 0 :|: s30 >= 0, s30 <= 0 + z14, z = 1 + z028 + z14, z028 >= 0, z14 >= 0, v0 >= 0, 1 + z028 + z14 = v0 h(z) -{ 0 }-> 1 + s31 + z0' :|: s31 >= 0, s31 <= 0 + 0, z >= 0, z1 >= 0, z0' >= 0, z = 1 + z0' + z1 h(z) -{ 0 }-> 1 + s32 + 0 :|: s32 >= 0, s32 <= 0 + 0, z >= 0 p(z) -{ 0 }-> z0 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 0 }-> 1 + s24 :|: s24 >= 0, s24 <= z + (z' - 1), z' - 1 >= 0, z >= 0 q(z) -{ 0 }-> z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {F}, {G} Previous analysis results are: +': runtime: O(n^1) [z'], size: O(1) [0] q: runtime: O(1) [0], size: O(n^1) [z] plus: runtime: O(1) [0], size: O(n^1) [z + z'] p: runtime: O(1) [0], size: O(n^1) [z] H: runtime: O(n^1) [1 + z], size: O(1) [1] h: runtime: O(1) [0], size: O(n^1) [1 + 2*z] g: runtime: O(1) [0], size: EXP F: runtime: INF, size: O(1) [2] ---------------------------------------- (107) 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: F(v0) -> null_F [0] g(v0) -> null_g [0] h(v0) -> null_h [0] plus(v0, v1) -> null_plus [0] p(v0) -> null_p [0] q(v0) -> null_q [0] G(v0) -> null_G [0] +'(v0, v1) -> null_+' [0] And the following fresh constants: null_F, null_g, null_h, null_plus, null_p, null_q, null_G, null_+' ---------------------------------------- (108) 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: G(s(z0)) -> c6(H(g(z0)), G(z0)) [1] +'(z0, s(z1)) -> c16(+'(z0, z1)) [1] G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) [1] G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) [1] G(s(z0)) -> c9(G(z0)) [1] H(z0) -> c10(+'(p(z0), q(z0))) [1] H(z0) -> c11(+'(p(z0), q(z0))) [1] F(s(s(z0))) -> c(H(g(z0))) [0] F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) [0] g(0) -> pair(s(0), s(0)) [0] g(s(z0)) -> h(g(z0)) [0] g(s(z0)) -> pair(plus(p(g(z0)), q(g(z0))), p(g(z0))) [0] h(z0) -> pair(plus(p(z0), q(z0)), p(z0)) [0] plus(z0, 0) -> z0 [0] plus(z0, s(z1)) -> s(plus(z0, z1)) [0] p(pair(z0, z1)) -> z0 [0] q(pair(z0, z1)) -> z1 [0] F(v0) -> null_F [0] g(v0) -> null_g [0] h(v0) -> null_h [0] plus(v0, v1) -> null_plus [0] p(v0) -> null_p [0] q(v0) -> null_q [0] G(v0) -> null_G [0] +'(v0, v1) -> null_+' [0] The TRS has the following type information: G :: s:0:null_plus:null_p:null_q -> c6:c7:c8:c9:null_G s :: s:0:null_plus:null_p:null_q -> s:0:null_plus:null_p:null_q c6 :: c16:c10:c11:null_+' -> c6:c7:c8:c9:null_G -> c6:c7:c8:c9:null_G H :: pair:null_g:null_h -> c16:c10:c11:null_+' g :: s:0:null_plus:null_p:null_q -> pair:null_g:null_h +' :: s:0:null_plus:null_p:null_q -> s:0:null_plus:null_p:null_q -> c16:c10:c11:null_+' c16 :: c16:c10:c11:null_+' -> c16:c10:c11:null_+' c7 :: c16:c10:c11:null_+' -> c6:c7:c8:c9:null_G -> c6:c7:c8:c9:null_G p :: pair:null_g:null_h -> s:0:null_plus:null_p:null_q q :: pair:null_g:null_h -> s:0:null_plus:null_p:null_q c8 :: c16:c10:c11:null_+' -> c6:c7:c8:c9:null_G -> c6:c7:c8:c9:null_G c9 :: c6:c7:c8:c9:null_G -> c6:c7:c8:c9:null_G c10 :: c16:c10:c11:null_+' -> c16:c10:c11:null_+' c11 :: c16:c10:c11:null_+' -> c16:c10:c11:null_+' F :: s:0:null_plus:null_p:null_q -> c:null_F c :: c16:c10:c11:null_+' -> c:null_F 0 :: s:0:null_plus:null_p:null_q pair :: s:0:null_plus:null_p:null_q -> s:0:null_plus:null_p:null_q -> pair:null_g:null_h h :: pair:null_g:null_h -> pair:null_g:null_h plus :: s:0:null_plus:null_p:null_q -> s:0:null_plus:null_p:null_q -> s:0:null_plus:null_p:null_q null_F :: c:null_F null_g :: pair:null_g:null_h null_h :: pair:null_g:null_h null_plus :: s:0:null_plus:null_p:null_q null_p :: s:0:null_plus:null_p:null_q null_q :: s:0:null_plus:null_p:null_q null_G :: c6:c7:c8:c9:null_G null_+' :: c16:c10:c11:null_+' Rewrite Strategy: INNERMOST ---------------------------------------- (109) 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 null_F => 0 null_g => 0 null_h => 0 null_plus => 0 null_p => 0 null_q => 0 null_G => 0 null_+' => 0 ---------------------------------------- (110) Obligation: Complexity RNTS consisting of the following rules: +'(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 +'(z, z') -{ 1 }-> 1 + +'(z0, z1) :|: z = z0, z1 >= 0, z0 >= 0, z' = 1 + z1 F(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 F(z) -{ 0 }-> 1 + H(g(z0)) :|: z0 >= 0, z = 1 + (1 + z0) F(z) -{ 0 }-> 1 + +'(p(g(z0)), q(g(z0))) :|: z0 >= 0, z = 1 + (1 + z0) G(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 G(z) -{ 1 }-> 1 + G(z0) :|: z = 1 + z0, z0 >= 0 G(z) -{ 1 }-> 1 + H(g(z0)) + G(z0) :|: z = 1 + z0, z0 >= 0 G(z) -{ 1 }-> 1 + +'(p(g(z0)), q(g(z0))) + G(z0) :|: z = 1 + z0, z0 >= 0 H(z) -{ 1 }-> 1 + +'(p(z0), q(z0)) :|: z = z0, z0 >= 0 g(z) -{ 0 }-> h(g(z0)) :|: z = 1 + z0, z0 >= 0 g(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 g(z) -{ 0 }-> 1 + plus(p(g(z0)), q(g(z0))) + p(g(z0)) :|: z = 1 + z0, z0 >= 0 g(z) -{ 0 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 h(z) -{ 0 }-> 1 + plus(p(z0), q(z0)) + p(z0) :|: z = z0, z0 >= 0 p(z) -{ 0 }-> z0 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 p(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 plus(z, z') -{ 0 }-> z0 :|: z = z0, z0 >= 0, z' = 0 plus(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 plus(z, z') -{ 0 }-> 1 + plus(z0, z1) :|: z = z0, z1 >= 0, z0 >= 0, z' = 1 + z1 q(z) -{ 0 }-> z1 :|: z1 >= 0, z0 >= 0, z = 1 + z0 + z1 q(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 Only complete derivations are relevant for the runtime complexity. ---------------------------------------- (111) CdtRuleRemovalProof (UPPER BOUND(ADD(n^1))) Found a reduction pair which oriented the following tuples strictly. Hence they can be removed from S. G(s(z0)) -> c6(H(g(z0)), G(z0)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c9(G(z0)) We considered the (Usable) Rules:none And the Tuples: G(s(z0)) -> c6(H(g(z0)), G(z0)) +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c9(G(z0)) H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) The order we found is given by the following interpretation: Polynomial interpretation : POL(+(x_1, x_2)) = [1] POL(+'(x_1, x_2)) = 0 POL(0) = [1] POL(F(x_1)) = [1] + x_1 POL(G(x_1)) = x_1 POL(H(x_1)) = 0 POL(c(x_1)) = x_1 POL(c10(x_1)) = x_1 POL(c11(x_1)) = x_1 POL(c16(x_1)) = x_1 POL(c6(x_1, x_2)) = x_1 + x_2 POL(c7(x_1, x_2)) = x_1 + x_2 POL(c8(x_1, x_2)) = x_1 + x_2 POL(c9(x_1)) = x_1 POL(g(x_1)) = x_1 POL(h(x_1)) = [1] + x_1 POL(p(x_1)) = [1] POL(pair(x_1, x_2)) = [1] POL(q(x_1)) = [1] POL(s(x_1)) = [1] + x_1 ---------------------------------------- (112) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: G(s(z0)) -> c6(H(g(z0)), G(z0)) +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c9(G(z0)) H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) K tuples: F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c6(H(g(z0)), G(z0)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c9(G(z0)) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: G_1, +'_2, H_1, F_1 Compound Symbols: c6_2, c16_1, c7_2, c8_2, c9_1, c10_1, c11_1, c_1 ---------------------------------------- (113) CdtKnowledgeProof (BOTH BOUNDS(ID, ID)) The following tuples could be moved from S to K by knowledge propagation: H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) ---------------------------------------- (114) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: G(s(z0)) -> c6(H(g(z0)), G(z0)) +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c9(G(z0)) H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c6(H(g(z0)), G(z0)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c9(G(z0)) H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: G_1, +'_2, H_1, F_1 Compound Symbols: c6_2, c16_1, c7_2, c8_2, c9_1, c10_1, c11_1, c_1 ---------------------------------------- (115) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) by G(s(0)) -> c7(+'(p(g(0)), q(pair(s(0), s(0)))), G(0)) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(g(0))), G(0)) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) ---------------------------------------- (116) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: G(s(z0)) -> c6(H(g(z0)), G(z0)) +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c9(G(z0)) H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(0)) -> c7(+'(p(g(0)), q(pair(s(0), s(0)))), G(0)) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(g(0))), G(0)) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c6(H(g(z0)), G(z0)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c9(G(z0)) H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: G_1, +'_2, H_1, F_1 Compound Symbols: c6_2, c16_1, c8_2, c9_1, c10_1, c11_1, c_1, c7_2 ---------------------------------------- (117) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (118) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: G(s(z0)) -> c6(H(g(z0)), G(z0)) +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c9(G(z0)) H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c7(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(g(0)))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c6(H(g(z0)), G(z0)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c9(G(z0)) H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: G_1, +'_2, H_1, F_1 Compound Symbols: c6_2, c16_1, c8_2, c9_1, c10_1, c11_1, c_1, c7_2, c7_1 ---------------------------------------- (119) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) by G(s(0)) -> c8(+'(p(g(0)), q(pair(s(0), s(0)))), G(0)) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(g(0))), G(0)) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) ---------------------------------------- (120) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: G(s(z0)) -> c6(H(g(z0)), G(z0)) +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c7(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(g(0)))) G(s(0)) -> c8(+'(p(g(0)), q(pair(s(0), s(0)))), G(0)) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(g(0))), G(0)) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c6(H(g(z0)), G(z0)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c9(G(z0)) H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: G_1, +'_2, H_1, F_1 Compound Symbols: c6_2, c16_1, c9_1, c10_1, c11_1, c_1, c7_2, c7_1, c8_2 ---------------------------------------- (121) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (122) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: G(s(z0)) -> c6(H(g(z0)), G(z0)) +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c7(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(g(0)))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c8(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(g(0)))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c6(H(g(z0)), G(z0)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c9(G(z0)) H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: G_1, +'_2, H_1, F_1 Compound Symbols: c6_2, c16_1, c9_1, c10_1, c11_1, c_1, c7_2, c7_1, c8_2, c8_1 ---------------------------------------- (123) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace H(z0) -> c10(+'(p(z0), q(z0))) by H(pair(z0, z1)) -> c10(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c10(+'(z0, q(pair(z0, z1)))) ---------------------------------------- (124) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: G(s(z0)) -> c6(H(g(z0)), G(z0)) +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) H(z0) -> c11(+'(p(z0), q(z0))) F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c7(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(g(0)))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c8(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(g(0)))) H(pair(z0, z1)) -> c10(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c10(+'(z0, q(pair(z0, z1)))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c6(H(g(z0)), G(z0)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c9(G(z0)) H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: G_1, +'_2, H_1, F_1 Compound Symbols: c6_2, c16_1, c9_1, c11_1, c_1, c7_2, c7_1, c8_2, c8_1, c10_1 ---------------------------------------- (125) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace H(z0) -> c11(+'(p(z0), q(z0))) by H(pair(z0, z1)) -> c11(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c11(+'(z0, q(pair(z0, z1)))) ---------------------------------------- (126) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: G(s(z0)) -> c6(H(g(z0)), G(z0)) +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c7(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(g(0)))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c8(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(g(0)))) H(pair(z0, z1)) -> c10(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c10(+'(z0, q(pair(z0, z1)))) H(pair(z0, z1)) -> c11(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c11(+'(z0, q(pair(z0, z1)))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c6(H(g(z0)), G(z0)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c9(G(z0)) H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: G_1, +'_2, F_1, H_1 Compound Symbols: c6_2, c16_1, c9_1, c_1, c7_2, c7_1, c8_2, c8_1, c10_1, c11_1 ---------------------------------------- (127) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace G(s(z0)) -> c6(H(g(z0)), G(z0)) by G(s(0)) -> c6(H(pair(s(0), s(0))), G(0)) G(s(s(z0))) -> c6(H(h(g(z0))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) ---------------------------------------- (128) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c7(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(g(0)))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c8(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(g(0)))) H(pair(z0, z1)) -> c10(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c10(+'(z0, q(pair(z0, z1)))) H(pair(z0, z1)) -> c11(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c11(+'(z0, q(pair(z0, z1)))) G(s(0)) -> c6(H(pair(s(0), s(0))), G(0)) G(s(s(z0))) -> c6(H(h(g(z0))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c6(H(g(z0)), G(z0)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c9(G(z0)) H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: +'_2, G_1, F_1, H_1 Compound Symbols: c16_1, c9_1, c_1, c7_2, c7_1, c8_2, c8_1, c10_1, c11_1, c6_2 ---------------------------------------- (129) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (130) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c7(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(g(0)))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c8(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(g(0)))) H(pair(z0, z1)) -> c10(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c10(+'(z0, q(pair(z0, z1)))) H(pair(z0, z1)) -> c11(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c11(+'(z0, q(pair(z0, z1)))) G(s(s(z0))) -> c6(H(h(g(z0))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c6(H(g(z0)), G(z0)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c9(G(z0)) H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: +'_2, G_1, F_1, H_1 Compound Symbols: c16_1, c9_1, c_1, c7_2, c7_1, c8_2, c8_1, c10_1, c11_1, c6_2, c6_1 ---------------------------------------- (131) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace F(s(s(z0))) -> c(H(g(z0))) by F(s(s(0))) -> c(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(h(g(z0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) ---------------------------------------- (132) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c7(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(g(0)))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c8(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(g(0)))) H(pair(z0, z1)) -> c10(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c10(+'(z0, q(pair(z0, z1)))) H(pair(z0, z1)) -> c11(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c11(+'(z0, q(pair(z0, z1)))) G(s(s(z0))) -> c6(H(h(g(z0))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(0))) -> c(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(h(g(z0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(H(g(z0))) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c6(H(g(z0)), G(z0)) G(s(z0)) -> c7(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c8(+'(p(g(z0)), q(g(z0))), G(z0)) G(s(z0)) -> c9(G(z0)) H(z0) -> c10(+'(p(z0), q(z0))) H(z0) -> c11(+'(p(z0), q(z0))) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: +'_2, G_1, F_1, H_1 Compound Symbols: c16_1, c9_1, c_1, c7_2, c7_1, c8_2, c8_1, c10_1, c11_1, c6_2, c6_1 ---------------------------------------- (133) CdtLeafRemovalProof (ComplexityIfPolyImplication) Removed 1 leading nodes: F(s(s(0))) -> c(H(pair(s(0), s(0)))) ---------------------------------------- (134) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c7(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(g(0)))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c8(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(g(0)))) H(pair(z0, z1)) -> c10(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c10(+'(z0, q(pair(z0, z1)))) H(pair(z0, z1)) -> c11(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c11(+'(z0, q(pair(z0, z1)))) G(s(s(z0))) -> c6(H(h(g(z0))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(h(g(z0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c9(G(z0)) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: +'_2, G_1, F_1, H_1 Compound Symbols: c16_1, c9_1, c_1, c7_2, c7_1, c8_2, c8_1, c10_1, c11_1, c6_2, c6_1 ---------------------------------------- (135) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) by F(s(s(0))) -> c(+'(p(g(0)), q(pair(s(0), s(0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(g(0)))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(g(s(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0))))) ---------------------------------------- (136) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c7(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(g(0)))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c8(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(g(0)))) H(pair(z0, z1)) -> c10(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c10(+'(z0, q(pair(z0, z1)))) H(pair(z0, z1)) -> c11(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c11(+'(z0, q(pair(z0, z1)))) G(s(s(z0))) -> c6(H(h(g(z0))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(h(g(z0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) F(s(s(0))) -> c(+'(p(g(0)), q(pair(s(0), s(0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(g(0)))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(g(s(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0))))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c9(G(z0)) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: +'_2, G_1, H_1, F_1 Compound Symbols: c16_1, c9_1, c7_2, c7_1, c8_2, c8_1, c10_1, c11_1, c6_2, c6_1, c_1 ---------------------------------------- (137) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(h(g(z0)))), G(s(z0))) by G(s(s(x0))) -> c7(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0))))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) ---------------------------------------- (138) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c7(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(g(0)))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c8(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(g(0)))) H(pair(z0, z1)) -> c10(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c10(+'(z0, q(pair(z0, z1)))) H(pair(z0, z1)) -> c11(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c11(+'(z0, q(pair(z0, z1)))) G(s(s(z0))) -> c6(H(h(g(z0))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(h(g(z0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) F(s(s(0))) -> c(+'(p(g(0)), q(pair(s(0), s(0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(g(0)))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(g(s(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0))))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c9(G(z0)) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: +'_2, G_1, H_1, F_1 Compound Symbols: c16_1, c9_1, c7_2, c7_1, c8_2, c8_1, c10_1, c11_1, c6_2, c6_1, c_1 ---------------------------------------- (139) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) by G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) ---------------------------------------- (140) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c7(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(g(0)))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c8(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(g(0)))) H(pair(z0, z1)) -> c10(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c10(+'(z0, q(pair(z0, z1)))) H(pair(z0, z1)) -> c11(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c11(+'(z0, q(pair(z0, z1)))) G(s(s(z0))) -> c6(H(h(g(z0))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(h(g(z0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) F(s(s(0))) -> c(+'(p(g(0)), q(pair(s(0), s(0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(g(0)))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(g(s(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0))))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c9(G(z0)) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: +'_2, G_1, H_1, F_1 Compound Symbols: c16_1, c9_1, c7_2, c7_1, c8_2, c8_1, c10_1, c11_1, c6_2, c6_1, c_1 ---------------------------------------- (141) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) by G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c7(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) ---------------------------------------- (142) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c7(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(g(0)))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c8(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(g(0)))) H(pair(z0, z1)) -> c10(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c10(+'(z0, q(pair(z0, z1)))) H(pair(z0, z1)) -> c11(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c11(+'(z0, q(pair(z0, z1)))) G(s(s(z0))) -> c6(H(h(g(z0))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(h(g(z0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) F(s(s(0))) -> c(+'(p(g(0)), q(pair(s(0), s(0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(g(0)))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(g(s(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0))))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c7(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c9(G(z0)) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: +'_2, G_1, H_1, F_1 Compound Symbols: c16_1, c9_1, c7_2, c7_1, c8_2, c8_1, c10_1, c11_1, c6_2, c6_1, c_1 ---------------------------------------- (143) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) by G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) ---------------------------------------- (144) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c7(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(g(0)))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c8(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(g(0)))) H(pair(z0, z1)) -> c10(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c10(+'(z0, q(pair(z0, z1)))) H(pair(z0, z1)) -> c11(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c11(+'(z0, q(pair(z0, z1)))) G(s(s(z0))) -> c6(H(h(g(z0))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(h(g(z0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) F(s(s(0))) -> c(+'(p(g(0)), q(pair(s(0), s(0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(g(0)))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(g(s(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0))))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c7(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c9(G(z0)) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: +'_2, G_1, H_1, F_1 Compound Symbols: c16_1, c9_1, c7_2, c7_1, c8_2, c8_1, c10_1, c11_1, c6_2, c6_1, c_1 ---------------------------------------- (145) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace G(s(0)) -> c7(+'(p(g(0)), q(pair(s(0), s(0))))) by G(s(0)) -> c7(+'(p(g(0)), s(0))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) ---------------------------------------- (146) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(g(0)))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c8(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(g(0)))) H(pair(z0, z1)) -> c10(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c10(+'(z0, q(pair(z0, z1)))) H(pair(z0, z1)) -> c11(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c11(+'(z0, q(pair(z0, z1)))) G(s(s(z0))) -> c6(H(h(g(z0))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(h(g(z0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) F(s(s(0))) -> c(+'(p(g(0)), q(pair(s(0), s(0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(g(0)))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(g(s(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0))))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c7(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c7(+'(p(g(0)), s(0))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c9(G(z0)) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: +'_2, G_1, H_1, F_1 Compound Symbols: c16_1, c9_1, c7_2, c7_1, c8_2, c8_1, c10_1, c11_1, c6_2, c6_1, c_1 ---------------------------------------- (147) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(g(0)))) by G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(s(0), q(g(0)))) ---------------------------------------- (148) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c8(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(g(0)))) H(pair(z0, z1)) -> c10(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c10(+'(z0, q(pair(z0, z1)))) H(pair(z0, z1)) -> c11(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c11(+'(z0, q(pair(z0, z1)))) G(s(s(z0))) -> c6(H(h(g(z0))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(h(g(z0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) F(s(s(0))) -> c(+'(p(g(0)), q(pair(s(0), s(0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(g(0)))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(g(s(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0))))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c7(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c7(+'(p(g(0)), s(0))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(s(0), q(g(0)))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c9(G(z0)) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: +'_2, G_1, H_1, F_1 Compound Symbols: c16_1, c9_1, c7_2, c8_2, c8_1, c10_1, c11_1, c6_2, c6_1, c_1, c7_1 ---------------------------------------- (149) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(h(g(z0)))), G(s(z0))) by G(s(s(x0))) -> c8(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0))))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) ---------------------------------------- (150) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c8(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(g(0)))) H(pair(z0, z1)) -> c10(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c10(+'(z0, q(pair(z0, z1)))) H(pair(z0, z1)) -> c11(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c11(+'(z0, q(pair(z0, z1)))) G(s(s(z0))) -> c6(H(h(g(z0))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(h(g(z0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) F(s(s(0))) -> c(+'(p(g(0)), q(pair(s(0), s(0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(g(0)))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(g(s(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0))))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c7(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c7(+'(p(g(0)), s(0))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(s(0), q(g(0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c9(G(z0)) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: +'_2, G_1, H_1, F_1 Compound Symbols: c16_1, c9_1, c7_2, c8_2, c8_1, c10_1, c11_1, c6_2, c6_1, c_1, c7_1 ---------------------------------------- (151) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) by G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) ---------------------------------------- (152) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c8(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(g(0)))) H(pair(z0, z1)) -> c10(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c10(+'(z0, q(pair(z0, z1)))) H(pair(z0, z1)) -> c11(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c11(+'(z0, q(pair(z0, z1)))) G(s(s(z0))) -> c6(H(h(g(z0))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(h(g(z0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) F(s(s(0))) -> c(+'(p(g(0)), q(pair(s(0), s(0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(g(0)))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(g(s(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0))))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c7(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c7(+'(p(g(0)), s(0))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(s(0), q(g(0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c9(G(z0)) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: +'_2, G_1, H_1, F_1 Compound Symbols: c16_1, c9_1, c7_2, c8_2, c8_1, c10_1, c11_1, c6_2, c6_1, c_1, c7_1 ---------------------------------------- (153) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(g(s(z0)))), G(s(z0))) by G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c8(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) ---------------------------------------- (154) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c8(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(g(0)))) H(pair(z0, z1)) -> c10(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c10(+'(z0, q(pair(z0, z1)))) H(pair(z0, z1)) -> c11(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c11(+'(z0, q(pair(z0, z1)))) G(s(s(z0))) -> c6(H(h(g(z0))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(h(g(z0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) F(s(s(0))) -> c(+'(p(g(0)), q(pair(s(0), s(0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(g(0)))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(g(s(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0))))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c7(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c7(+'(p(g(0)), s(0))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(s(0), q(g(0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c8(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c9(G(z0)) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: +'_2, G_1, H_1, F_1 Compound Symbols: c16_1, c9_1, c7_2, c8_2, c8_1, c10_1, c11_1, c6_2, c6_1, c_1, c7_1 ---------------------------------------- (155) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) by G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) ---------------------------------------- (156) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c8(+'(p(g(0)), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(g(0)))) H(pair(z0, z1)) -> c10(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c10(+'(z0, q(pair(z0, z1)))) H(pair(z0, z1)) -> c11(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c11(+'(z0, q(pair(z0, z1)))) G(s(s(z0))) -> c6(H(h(g(z0))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(h(g(z0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) F(s(s(0))) -> c(+'(p(g(0)), q(pair(s(0), s(0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(g(0)))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(g(s(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0))))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c7(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c7(+'(p(g(0)), s(0))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(s(0), q(g(0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c8(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c9(G(z0)) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: +'_2, G_1, H_1, F_1 Compound Symbols: c16_1, c9_1, c7_2, c8_2, c8_1, c10_1, c11_1, c6_2, c6_1, c_1, c7_1 ---------------------------------------- (157) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace G(s(0)) -> c8(+'(p(g(0)), q(pair(s(0), s(0))))) by G(s(0)) -> c8(+'(p(g(0)), s(0))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) ---------------------------------------- (158) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(g(0)))) H(pair(z0, z1)) -> c10(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c10(+'(z0, q(pair(z0, z1)))) H(pair(z0, z1)) -> c11(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c11(+'(z0, q(pair(z0, z1)))) G(s(s(z0))) -> c6(H(h(g(z0))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(h(g(z0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) F(s(s(0))) -> c(+'(p(g(0)), q(pair(s(0), s(0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(g(0)))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(g(s(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0))))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c7(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c7(+'(p(g(0)), s(0))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(s(0), q(g(0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c8(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c8(+'(p(g(0)), s(0))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c9(G(z0)) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: +'_2, G_1, H_1, F_1 Compound Symbols: c16_1, c9_1, c7_2, c8_2, c8_1, c10_1, c11_1, c6_2, c6_1, c_1, c7_1 ---------------------------------------- (159) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(g(0)))) by G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(s(0), q(g(0)))) ---------------------------------------- (160) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) H(pair(z0, z1)) -> c10(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c10(+'(z0, q(pair(z0, z1)))) H(pair(z0, z1)) -> c11(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c11(+'(z0, q(pair(z0, z1)))) G(s(s(z0))) -> c6(H(h(g(z0))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(h(g(z0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) F(s(s(0))) -> c(+'(p(g(0)), q(pair(s(0), s(0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(g(0)))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(g(s(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0))))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c7(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c7(+'(p(g(0)), s(0))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(s(0), q(g(0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c8(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c8(+'(p(g(0)), s(0))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(s(0), q(g(0)))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c9(G(z0)) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: +'_2, G_1, H_1, F_1 Compound Symbols: c16_1, c9_1, c7_2, c8_2, c10_1, c11_1, c6_2, c6_1, c_1, c7_1, c8_1 ---------------------------------------- (161) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace H(pair(z0, z1)) -> c10(+'(p(pair(z0, z1)), z1)) by H(pair(z0, z1)) -> c10(+'(z0, z1)) ---------------------------------------- (162) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) H(pair(z0, z1)) -> c10(+'(z0, q(pair(z0, z1)))) H(pair(z0, z1)) -> c11(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c11(+'(z0, q(pair(z0, z1)))) G(s(s(z0))) -> c6(H(h(g(z0))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(h(g(z0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) F(s(s(0))) -> c(+'(p(g(0)), q(pair(s(0), s(0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(g(0)))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(g(s(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0))))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c7(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c7(+'(p(g(0)), s(0))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(s(0), q(g(0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c8(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c8(+'(p(g(0)), s(0))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(s(0), q(g(0)))) H(pair(z0, z1)) -> c10(+'(z0, z1)) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c9(G(z0)) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: +'_2, G_1, H_1, F_1 Compound Symbols: c16_1, c9_1, c7_2, c8_2, c10_1, c11_1, c6_2, c6_1, c_1, c7_1, c8_1 ---------------------------------------- (163) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace H(pair(z0, z1)) -> c10(+'(z0, q(pair(z0, z1)))) by H(pair(z0, z1)) -> c10(+'(z0, z1)) ---------------------------------------- (164) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) H(pair(z0, z1)) -> c11(+'(p(pair(z0, z1)), z1)) H(pair(z0, z1)) -> c11(+'(z0, q(pair(z0, z1)))) G(s(s(z0))) -> c6(H(h(g(z0))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(h(g(z0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) F(s(s(0))) -> c(+'(p(g(0)), q(pair(s(0), s(0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(g(0)))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(g(s(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0))))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c7(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c7(+'(p(g(0)), s(0))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(s(0), q(g(0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c8(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c8(+'(p(g(0)), s(0))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(s(0), q(g(0)))) H(pair(z0, z1)) -> c10(+'(z0, z1)) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c9(G(z0)) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: +'_2, G_1, H_1, F_1 Compound Symbols: c16_1, c9_1, c7_2, c8_2, c11_1, c6_2, c6_1, c_1, c7_1, c8_1, c10_1 ---------------------------------------- (165) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace H(pair(z0, z1)) -> c11(+'(p(pair(z0, z1)), z1)) by H(pair(z0, z1)) -> c11(+'(z0, z1)) ---------------------------------------- (166) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) H(pair(z0, z1)) -> c11(+'(z0, q(pair(z0, z1)))) G(s(s(z0))) -> c6(H(h(g(z0))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(h(g(z0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) F(s(s(0))) -> c(+'(p(g(0)), q(pair(s(0), s(0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(g(0)))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(g(s(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0))))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c7(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c7(+'(p(g(0)), s(0))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(s(0), q(g(0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c8(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c8(+'(p(g(0)), s(0))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(s(0), q(g(0)))) H(pair(z0, z1)) -> c10(+'(z0, z1)) H(pair(z0, z1)) -> c11(+'(z0, z1)) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c9(G(z0)) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: +'_2, G_1, H_1, F_1 Compound Symbols: c16_1, c9_1, c7_2, c8_2, c11_1, c6_2, c6_1, c_1, c7_1, c8_1, c10_1 ---------------------------------------- (167) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace H(pair(z0, z1)) -> c11(+'(z0, q(pair(z0, z1)))) by H(pair(z0, z1)) -> c11(+'(z0, z1)) ---------------------------------------- (168) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c6(H(h(g(z0))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(h(g(z0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) F(s(s(0))) -> c(+'(p(g(0)), q(pair(s(0), s(0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(g(0)))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(g(s(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0))))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c7(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c7(+'(p(g(0)), s(0))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(s(0), q(g(0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c8(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c8(+'(p(g(0)), s(0))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(s(0), q(g(0)))) H(pair(z0, z1)) -> c10(+'(z0, z1)) H(pair(z0, z1)) -> c11(+'(z0, z1)) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c9(G(z0)) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: +'_2, G_1, F_1, H_1 Compound Symbols: c16_1, c9_1, c7_2, c8_2, c6_2, c6_1, c_1, c7_1, c8_1, c10_1, c11_1 ---------------------------------------- (169) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace G(s(s(z0))) -> c6(H(h(g(z0))), G(s(z0))) by G(s(s(x0))) -> c6(H(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), G(s(x0))) G(s(s(0))) -> c6(H(h(pair(s(0), s(0)))), G(s(0))) G(s(s(s(z0)))) -> c6(H(h(h(g(z0)))), G(s(s(z0)))) G(s(s(s(z0)))) -> c6(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c6(G(s(x0))) ---------------------------------------- (170) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(h(g(z0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) F(s(s(0))) -> c(+'(p(g(0)), q(pair(s(0), s(0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(g(0)))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(g(s(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0))))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c7(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c7(+'(p(g(0)), s(0))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(s(0), q(g(0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c8(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c8(+'(p(g(0)), s(0))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(s(0), q(g(0)))) H(pair(z0, z1)) -> c10(+'(z0, z1)) H(pair(z0, z1)) -> c11(+'(z0, z1)) G(s(s(0))) -> c6(H(h(pair(s(0), s(0)))), G(s(0))) G(s(s(s(z0)))) -> c6(H(h(h(g(z0)))), G(s(s(z0)))) G(s(s(s(z0)))) -> c6(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c6(G(s(x0))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c9(G(z0)) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: +'_2, G_1, F_1, H_1 Compound Symbols: c16_1, c9_1, c7_2, c8_2, c6_2, c6_1, c_1, c7_1, c8_1, c10_1, c11_1 ---------------------------------------- (171) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace F(s(s(s(z0)))) -> c(H(h(g(z0)))) by F(s(s(s(x0)))) -> c(H(pair(+(p(g(x0)), q(g(x0))), p(g(x0))))) F(s(s(s(0)))) -> c(H(h(pair(s(0), s(0))))) F(s(s(s(s(z0))))) -> c(H(h(h(g(z0))))) F(s(s(s(s(z0))))) -> c(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) ---------------------------------------- (172) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) F(s(s(0))) -> c(+'(p(g(0)), q(pair(s(0), s(0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(g(0)))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(g(s(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0))))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c7(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c7(+'(p(g(0)), s(0))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(s(0), q(g(0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c8(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c8(+'(p(g(0)), s(0))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(s(0), q(g(0)))) H(pair(z0, z1)) -> c10(+'(z0, z1)) H(pair(z0, z1)) -> c11(+'(z0, z1)) G(s(s(0))) -> c6(H(h(pair(s(0), s(0)))), G(s(0))) G(s(s(s(z0)))) -> c6(H(h(h(g(z0)))), G(s(s(z0)))) G(s(s(s(z0)))) -> c6(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c6(G(s(x0))) F(s(s(s(0)))) -> c(H(h(pair(s(0), s(0))))) F(s(s(s(s(z0))))) -> c(H(h(h(g(z0))))) F(s(s(s(s(z0))))) -> c(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c9(G(z0)) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: +'_2, G_1, F_1, H_1 Compound Symbols: c16_1, c9_1, c7_2, c8_2, c6_2, c6_1, c_1, c7_1, c8_1, c10_1, c11_1 ---------------------------------------- (173) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace F(s(s(0))) -> c(+'(p(g(0)), q(pair(s(0), s(0))))) by F(s(s(0))) -> c(+'(p(g(0)), s(0))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) ---------------------------------------- (174) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(g(0)))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(g(s(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0))))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c7(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c7(+'(p(g(0)), s(0))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(s(0), q(g(0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c8(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c8(+'(p(g(0)), s(0))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(s(0), q(g(0)))) H(pair(z0, z1)) -> c10(+'(z0, z1)) H(pair(z0, z1)) -> c11(+'(z0, z1)) G(s(s(0))) -> c6(H(h(pair(s(0), s(0)))), G(s(0))) G(s(s(s(z0)))) -> c6(H(h(h(g(z0)))), G(s(s(z0)))) G(s(s(s(z0)))) -> c6(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c6(G(s(x0))) F(s(s(s(0)))) -> c(H(h(pair(s(0), s(0))))) F(s(s(s(s(z0))))) -> c(H(h(h(g(z0))))) F(s(s(s(s(z0))))) -> c(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(g(0)), s(0))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c9(G(z0)) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: +'_2, G_1, F_1, H_1 Compound Symbols: c16_1, c9_1, c7_2, c8_2, c6_2, c6_1, c_1, c7_1, c8_1, c10_1, c11_1 ---------------------------------------- (175) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(h(g(z0))))) by F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(h(g(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0))))) ---------------------------------------- (176) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(g(0)))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(g(s(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0))))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c7(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c7(+'(p(g(0)), s(0))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(s(0), q(g(0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c8(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c8(+'(p(g(0)), s(0))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(s(0), q(g(0)))) H(pair(z0, z1)) -> c10(+'(z0, z1)) H(pair(z0, z1)) -> c11(+'(z0, z1)) G(s(s(0))) -> c6(H(h(pair(s(0), s(0)))), G(s(0))) G(s(s(s(z0)))) -> c6(H(h(h(g(z0)))), G(s(s(z0)))) G(s(s(s(z0)))) -> c6(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c6(G(s(x0))) F(s(s(s(0)))) -> c(H(h(pair(s(0), s(0))))) F(s(s(s(s(z0))))) -> c(H(h(h(g(z0))))) F(s(s(s(s(z0))))) -> c(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(g(0)), s(0))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(h(g(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0))))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c9(G(z0)) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: +'_2, G_1, F_1, H_1 Compound Symbols: c16_1, c9_1, c7_2, c8_2, c6_2, c6_1, c_1, c7_1, c8_1, c10_1, c11_1 ---------------------------------------- (177) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) by F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), p(g(x0)))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) ---------------------------------------- (178) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(g(0)))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(g(s(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0))))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c7(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c7(+'(p(g(0)), s(0))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(s(0), q(g(0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c8(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c8(+'(p(g(0)), s(0))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(s(0), q(g(0)))) H(pair(z0, z1)) -> c10(+'(z0, z1)) H(pair(z0, z1)) -> c11(+'(z0, z1)) G(s(s(0))) -> c6(H(h(pair(s(0), s(0)))), G(s(0))) G(s(s(s(z0)))) -> c6(H(h(h(g(z0)))), G(s(s(z0)))) G(s(s(s(z0)))) -> c6(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c6(G(s(x0))) F(s(s(s(0)))) -> c(H(h(pair(s(0), s(0))))) F(s(s(s(s(z0))))) -> c(H(h(h(g(z0))))) F(s(s(s(s(z0))))) -> c(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(g(0)), s(0))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(h(g(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), p(g(x0)))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c9(G(z0)) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: +'_2, G_1, F_1, H_1 Compound Symbols: c16_1, c9_1, c7_2, c8_2, c6_2, c6_1, c_1, c7_1, c8_1, c10_1, c11_1 ---------------------------------------- (179) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(g(0)))) by F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) F(s(s(0))) -> c(+'(s(0), q(g(0)))) ---------------------------------------- (180) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(g(s(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0))))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c7(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c7(+'(p(g(0)), s(0))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(s(0), q(g(0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c8(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c8(+'(p(g(0)), s(0))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(s(0), q(g(0)))) H(pair(z0, z1)) -> c10(+'(z0, z1)) H(pair(z0, z1)) -> c11(+'(z0, z1)) G(s(s(0))) -> c6(H(h(pair(s(0), s(0)))), G(s(0))) G(s(s(s(z0)))) -> c6(H(h(h(g(z0)))), G(s(s(z0)))) G(s(s(s(z0)))) -> c6(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c6(G(s(x0))) F(s(s(s(0)))) -> c(H(h(pair(s(0), s(0))))) F(s(s(s(s(z0))))) -> c(H(h(h(g(z0))))) F(s(s(s(s(z0))))) -> c(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(g(0)), s(0))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(h(g(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), p(g(x0)))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(s(0), q(g(0)))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c9(G(z0)) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: +'_2, G_1, F_1, H_1 Compound Symbols: c16_1, c9_1, c7_2, c8_2, c6_2, c6_1, c_1, c7_1, c8_1, c10_1, c11_1 ---------------------------------------- (181) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(g(s(z0))))) by F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(s(x0)))) -> c(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(h(pair(s(0), s(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(h(h(g(z0)))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0)))))) ---------------------------------------- (182) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0))))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c7(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c7(+'(p(g(0)), s(0))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(s(0), q(g(0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c8(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c8(+'(p(g(0)), s(0))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(s(0), q(g(0)))) H(pair(z0, z1)) -> c10(+'(z0, z1)) H(pair(z0, z1)) -> c11(+'(z0, z1)) G(s(s(0))) -> c6(H(h(pair(s(0), s(0)))), G(s(0))) G(s(s(s(z0)))) -> c6(H(h(h(g(z0)))), G(s(s(z0)))) G(s(s(s(z0)))) -> c6(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c6(G(s(x0))) F(s(s(s(0)))) -> c(H(h(pair(s(0), s(0))))) F(s(s(s(s(z0))))) -> c(H(h(h(g(z0))))) F(s(s(s(s(z0))))) -> c(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(g(0)), s(0))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(h(g(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), p(g(x0)))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(s(0), q(g(0)))) F(s(s(s(0)))) -> c(+'(p(h(pair(s(0), s(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(h(h(g(z0)))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0)))))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c9(G(z0)) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: +'_2, G_1, F_1, H_1 Compound Symbols: c16_1, c9_1, c7_2, c8_2, c6_2, c6_1, c_1, c7_1, c8_1, c10_1, c11_1 ---------------------------------------- (183) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0))))) by F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(s(x0)))) -> c(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) ---------------------------------------- (184) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0))))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c7(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c7(+'(p(g(0)), s(0))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(s(0), q(g(0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c8(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c8(+'(p(g(0)), s(0))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(s(0), q(g(0)))) H(pair(z0, z1)) -> c10(+'(z0, z1)) H(pair(z0, z1)) -> c11(+'(z0, z1)) G(s(s(0))) -> c6(H(h(pair(s(0), s(0)))), G(s(0))) G(s(s(s(z0)))) -> c6(H(h(h(g(z0)))), G(s(s(z0)))) G(s(s(s(z0)))) -> c6(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c6(G(s(x0))) F(s(s(s(0)))) -> c(H(h(pair(s(0), s(0))))) F(s(s(s(s(z0))))) -> c(H(h(h(g(z0))))) F(s(s(s(s(z0))))) -> c(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(g(0)), s(0))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(h(g(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), p(g(x0)))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(s(0), q(g(0)))) F(s(s(s(0)))) -> c(+'(p(h(pair(s(0), s(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(h(h(g(z0)))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(x0)))) -> c(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c9(G(z0)) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: +'_2, G_1, F_1, H_1 Compound Symbols: c16_1, c9_1, c7_2, c8_2, c6_2, c6_1, c_1, c7_1, c8_1, c10_1, c11_1 ---------------------------------------- (185) CdtRewritingProof (BOTH BOUNDS(ID, ID)) Used rewriting to replace G(s(s(0))) -> c7(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) by G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(pair(s(0), s(0)))), p(pair(s(0), s(0)))))), G(s(0))) ---------------------------------------- (186) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) G(s(z0)) -> c9(G(z0)) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0))))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c7(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c7(+'(p(g(0)), s(0))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(s(0), q(g(0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c8(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c8(+'(p(g(0)), s(0))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(s(0), q(g(0)))) H(pair(z0, z1)) -> c10(+'(z0, z1)) H(pair(z0, z1)) -> c11(+'(z0, z1)) G(s(s(0))) -> c6(H(h(pair(s(0), s(0)))), G(s(0))) G(s(s(s(z0)))) -> c6(H(h(h(g(z0)))), G(s(s(z0)))) G(s(s(s(z0)))) -> c6(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c6(G(s(x0))) F(s(s(s(0)))) -> c(H(h(pair(s(0), s(0))))) F(s(s(s(s(z0))))) -> c(H(h(h(g(z0))))) F(s(s(s(s(z0))))) -> c(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(g(0)), s(0))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(h(g(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), p(g(x0)))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(s(0), q(g(0)))) F(s(s(s(0)))) -> c(+'(p(h(pair(s(0), s(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(h(h(g(z0)))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(x0)))) -> c(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(pair(s(0), s(0)))), p(pair(s(0), s(0)))))), G(s(0))) S tuples: +'(z0, s(z1)) -> c16(+'(z0, z1)) K tuples: F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c9(G(z0)) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: +'_2, G_1, F_1, H_1 Compound Symbols: c16_1, c9_1, c7_2, c8_2, c6_2, c6_1, c_1, c7_1, c8_1, c10_1, c11_1 ---------------------------------------- (187) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace +'(z0, s(z1)) -> c16(+'(z0, z1)) by +'(z0, s(s(y1))) -> c16(+'(z0, s(y1))) ---------------------------------------- (188) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: G(s(z0)) -> c9(G(z0)) G(s(s(z0))) -> c7(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), G(s(z0))) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0))))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c7(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c7(+'(p(g(0)), s(0))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(s(0), q(g(0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(0))) -> c8(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c8(+'(p(g(0)), s(0))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(s(0), q(g(0)))) H(pair(z0, z1)) -> c10(+'(z0, z1)) H(pair(z0, z1)) -> c11(+'(z0, z1)) G(s(s(0))) -> c6(H(h(pair(s(0), s(0)))), G(s(0))) G(s(s(s(z0)))) -> c6(H(h(h(g(z0)))), G(s(s(z0)))) G(s(s(s(z0)))) -> c6(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c6(G(s(x0))) F(s(s(s(0)))) -> c(H(h(pair(s(0), s(0))))) F(s(s(s(s(z0))))) -> c(H(h(h(g(z0))))) F(s(s(s(s(z0))))) -> c(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(g(0)), s(0))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(h(g(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), p(g(x0)))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(s(0), q(g(0)))) F(s(s(s(0)))) -> c(+'(p(h(pair(s(0), s(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(h(h(g(z0)))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(x0)))) -> c(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(pair(s(0), s(0)))), p(pair(s(0), s(0)))))), G(s(0))) +'(z0, s(s(y1))) -> c16(+'(z0, s(y1))) S tuples: +'(z0, s(s(y1))) -> c16(+'(z0, s(y1))) K tuples: F(s(s(z0))) -> c(+'(p(g(z0)), q(g(z0)))) G(s(z0)) -> c9(G(z0)) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: G_1, F_1, H_1, +'_2 Compound Symbols: c9_1, c7_2, c8_2, c6_2, c6_1, c_1, c7_1, c8_1, c10_1, c11_1, c16_1 ---------------------------------------- (189) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing nodes: G(s(0)) -> c8(+'(p(g(0)), s(0))) F(s(s(0))) -> c(+'(p(g(0)), s(0))) G(s(0)) -> c7(+'(p(g(0)), s(0))) ---------------------------------------- (190) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: G(s(z0)) -> c9(G(z0)) G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0))))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c7(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(s(0), q(g(0)))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0))))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c8(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(s(0), q(g(0)))) H(pair(z0, z1)) -> c10(+'(z0, z1)) H(pair(z0, z1)) -> c11(+'(z0, z1)) G(s(s(0))) -> c6(H(h(pair(s(0), s(0)))), G(s(0))) G(s(s(s(z0)))) -> c6(H(h(h(g(z0)))), G(s(s(z0)))) G(s(s(s(z0)))) -> c6(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c6(G(s(x0))) F(s(s(s(0)))) -> c(H(h(pair(s(0), s(0))))) F(s(s(s(s(z0))))) -> c(H(h(h(g(z0))))) F(s(s(s(s(z0))))) -> c(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(h(g(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), p(g(x0)))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(s(0), q(g(0)))) F(s(s(s(x0)))) -> c(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(h(pair(s(0), s(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(h(h(g(z0)))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(x0)))) -> c(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(pair(s(0), s(0)))), p(pair(s(0), s(0)))))), G(s(0))) +'(z0, s(s(y1))) -> c16(+'(z0, s(y1))) S tuples: +'(z0, s(s(y1))) -> c16(+'(z0, s(y1))) K tuples: G(s(z0)) -> c9(G(z0)) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: G_1, F_1, H_1, +'_2 Compound Symbols: c9_1, c6_2, c6_1, c_1, c7_2, c7_1, c8_2, c8_1, c10_1, c11_1, c16_1 ---------------------------------------- (191) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace G(s(z0)) -> c9(G(z0)) by G(s(s(y0))) -> c9(G(s(y0))) G(s(s(s(y0)))) -> c9(G(s(s(y0)))) G(s(s(0))) -> c9(G(s(0))) G(s(s(s(s(y0))))) -> c9(G(s(s(s(y0))))) G(s(s(s(0)))) -> c9(G(s(s(0)))) ---------------------------------------- (192) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0))))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c7(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c7(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(s(0), q(g(0)))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0))))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(h(pair(s(0), s(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0)))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0))))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0))))), G(s(0))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c8(+'(p(h(pair(s(0), s(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(0))) -> c8(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0)))), G(s(0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(s(0), q(g(0)))) H(pair(z0, z1)) -> c10(+'(z0, z1)) H(pair(z0, z1)) -> c11(+'(z0, z1)) G(s(s(0))) -> c6(H(h(pair(s(0), s(0)))), G(s(0))) G(s(s(s(z0)))) -> c6(H(h(h(g(z0)))), G(s(s(z0)))) G(s(s(s(z0)))) -> c6(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c6(G(s(x0))) F(s(s(s(0)))) -> c(H(h(pair(s(0), s(0))))) F(s(s(s(s(z0))))) -> c(H(h(h(g(z0))))) F(s(s(s(s(z0))))) -> c(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(h(g(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), p(g(x0)))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(s(0), q(g(0)))) F(s(s(s(x0)))) -> c(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(h(pair(s(0), s(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(h(h(g(z0)))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(x0)))) -> c(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) G(s(s(0))) -> c7(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(pair(s(0), s(0)))), p(pair(s(0), s(0)))))), G(s(0))) +'(z0, s(s(y1))) -> c16(+'(z0, s(y1))) G(s(s(y0))) -> c9(G(s(y0))) G(s(s(s(y0)))) -> c9(G(s(s(y0)))) G(s(s(0))) -> c9(G(s(0))) G(s(s(s(s(y0))))) -> c9(G(s(s(s(y0))))) G(s(s(s(0)))) -> c9(G(s(s(0)))) S tuples: +'(z0, s(s(y1))) -> c16(+'(z0, s(y1))) K tuples: G(s(s(y0))) -> c9(G(s(y0))) G(s(s(s(y0)))) -> c9(G(s(s(y0)))) G(s(s(0))) -> c9(G(s(0))) G(s(s(s(s(y0))))) -> c9(G(s(s(s(y0))))) G(s(s(s(0)))) -> c9(G(s(s(0)))) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: G_1, F_1, H_1, +'_2 Compound Symbols: c6_2, c6_1, c_1, c7_2, c7_1, c8_2, c8_1, c10_1, c11_1, c16_1, c9_1 ---------------------------------------- (193) CdtGraphSplitRhsProof (BOTH BOUNDS(ID, ID)) Split RHS of tuples not part of any SCC ---------------------------------------- (194) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0))))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(s(0), q(g(0)))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0))))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(s(0), q(g(0)))) H(pair(z0, z1)) -> c10(+'(z0, z1)) H(pair(z0, z1)) -> c11(+'(z0, z1)) G(s(s(s(z0)))) -> c6(H(h(h(g(z0)))), G(s(s(z0)))) G(s(s(s(z0)))) -> c6(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c6(G(s(x0))) F(s(s(s(0)))) -> c(H(h(pair(s(0), s(0))))) F(s(s(s(s(z0))))) -> c(H(h(h(g(z0))))) F(s(s(s(s(z0))))) -> c(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(h(g(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), p(g(x0)))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(s(0), q(g(0)))) F(s(s(s(x0)))) -> c(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(h(pair(s(0), s(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(h(h(g(z0)))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(x0)))) -> c(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) +'(z0, s(s(y1))) -> c16(+'(z0, s(y1))) G(s(s(y0))) -> c9(G(s(y0))) G(s(s(s(y0)))) -> c9(G(s(s(y0)))) G(s(s(0))) -> c9(G(s(0))) G(s(s(s(s(y0))))) -> c9(G(s(s(s(y0))))) G(s(s(s(0)))) -> c9(G(s(s(0)))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) G(s(s(0))) -> c1(G(s(0))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) G(s(s(0))) -> c1(+'(p(h(pair(s(0), s(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) G(s(s(0))) -> c1(H(h(pair(s(0), s(0))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(pair(s(0), s(0)))), p(pair(s(0), s(0))))))) S tuples: +'(z0, s(s(y1))) -> c16(+'(z0, s(y1))) K tuples: G(s(s(y0))) -> c9(G(s(y0))) G(s(s(s(y0)))) -> c9(G(s(s(y0)))) G(s(s(0))) -> c9(G(s(0))) G(s(s(s(s(y0))))) -> c9(G(s(s(s(y0))))) G(s(s(s(0)))) -> c9(G(s(s(0)))) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: G_1, F_1, H_1, +'_2 Compound Symbols: c6_2, c6_1, c_1, c7_2, c7_1, c8_2, c8_1, c10_1, c11_1, c16_1, c9_1, c1_1 ---------------------------------------- (195) CdtRewritingProof (BOTH BOUNDS(ID, ID)) Used rewriting to replace G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) by G(s(0)) -> c7(+'(p(pair(s(0), s(0))), s(0))) ---------------------------------------- (196) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0))))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(s(0), q(g(0)))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0))))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(s(0), q(g(0)))) H(pair(z0, z1)) -> c10(+'(z0, z1)) H(pair(z0, z1)) -> c11(+'(z0, z1)) G(s(s(s(z0)))) -> c6(H(h(h(g(z0)))), G(s(s(z0)))) G(s(s(s(z0)))) -> c6(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c6(G(s(x0))) F(s(s(s(0)))) -> c(H(h(pair(s(0), s(0))))) F(s(s(s(s(z0))))) -> c(H(h(h(g(z0))))) F(s(s(s(s(z0))))) -> c(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(h(g(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), p(g(x0)))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(s(0), q(g(0)))) F(s(s(s(x0)))) -> c(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(h(pair(s(0), s(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(h(h(g(z0)))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(x0)))) -> c(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) +'(z0, s(s(y1))) -> c16(+'(z0, s(y1))) G(s(s(y0))) -> c9(G(s(y0))) G(s(s(s(y0)))) -> c9(G(s(s(y0)))) G(s(s(0))) -> c9(G(s(0))) G(s(s(s(s(y0))))) -> c9(G(s(s(s(y0))))) G(s(s(s(0)))) -> c9(G(s(s(0)))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) G(s(s(0))) -> c1(G(s(0))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) G(s(s(0))) -> c1(+'(p(h(pair(s(0), s(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) G(s(s(0))) -> c1(H(h(pair(s(0), s(0))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(pair(s(0), s(0)))), p(pair(s(0), s(0))))))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), s(0))) S tuples: +'(z0, s(s(y1))) -> c16(+'(z0, s(y1))) K tuples: G(s(s(y0))) -> c9(G(s(y0))) G(s(s(s(y0)))) -> c9(G(s(s(y0)))) G(s(s(0))) -> c9(G(s(0))) G(s(s(s(s(y0))))) -> c9(G(s(s(s(y0))))) G(s(s(s(0)))) -> c9(G(s(s(0)))) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: G_1, F_1, H_1, +'_2 Compound Symbols: c6_2, c6_1, c_1, c7_2, c7_1, c8_2, c8_1, c10_1, c11_1, c16_1, c9_1, c1_1 ---------------------------------------- (197) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: G(s(0)) -> c7(+'(p(pair(s(0), s(0))), s(0))) ---------------------------------------- (198) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0))))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c7(+'(s(0), q(g(0)))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0))))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(s(0), q(g(0)))) H(pair(z0, z1)) -> c10(+'(z0, z1)) H(pair(z0, z1)) -> c11(+'(z0, z1)) G(s(s(s(z0)))) -> c6(H(h(h(g(z0)))), G(s(s(z0)))) G(s(s(s(z0)))) -> c6(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c6(G(s(x0))) F(s(s(s(0)))) -> c(H(h(pair(s(0), s(0))))) F(s(s(s(s(z0))))) -> c(H(h(h(g(z0))))) F(s(s(s(s(z0))))) -> c(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(h(g(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), p(g(x0)))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(s(0), q(g(0)))) F(s(s(s(x0)))) -> c(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(h(pair(s(0), s(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(h(h(g(z0)))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(x0)))) -> c(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) +'(z0, s(s(y1))) -> c16(+'(z0, s(y1))) G(s(s(y0))) -> c9(G(s(y0))) G(s(s(s(y0)))) -> c9(G(s(s(y0)))) G(s(s(0))) -> c9(G(s(0))) G(s(s(s(s(y0))))) -> c9(G(s(s(s(y0))))) G(s(s(s(0)))) -> c9(G(s(s(0)))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) G(s(s(0))) -> c1(G(s(0))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) G(s(s(0))) -> c1(+'(p(h(pair(s(0), s(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) G(s(s(0))) -> c1(H(h(pair(s(0), s(0))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(pair(s(0), s(0)))), p(pair(s(0), s(0))))))) S tuples: +'(z0, s(s(y1))) -> c16(+'(z0, s(y1))) K tuples: G(s(s(y0))) -> c9(G(s(y0))) G(s(s(s(y0)))) -> c9(G(s(s(y0)))) G(s(s(0))) -> c9(G(s(0))) G(s(s(s(s(y0))))) -> c9(G(s(s(s(y0))))) G(s(s(s(0)))) -> c9(G(s(s(0)))) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: G_1, F_1, H_1, +'_2 Compound Symbols: c6_2, c6_1, c_1, c7_2, c7_1, c8_2, c8_1, c10_1, c11_1, c16_1, c9_1, c1_1 ---------------------------------------- (199) CdtRewritingProof (BOTH BOUNDS(ID, ID)) Used rewriting to replace G(s(0)) -> c7(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) by G(s(0)) -> c7(+'(p(pair(s(0), s(0))), s(0))) ---------------------------------------- (200) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0))))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c7(+'(s(0), q(g(0)))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0))))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(s(0), q(g(0)))) H(pair(z0, z1)) -> c10(+'(z0, z1)) H(pair(z0, z1)) -> c11(+'(z0, z1)) G(s(s(s(z0)))) -> c6(H(h(h(g(z0)))), G(s(s(z0)))) G(s(s(s(z0)))) -> c6(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c6(G(s(x0))) F(s(s(s(0)))) -> c(H(h(pair(s(0), s(0))))) F(s(s(s(s(z0))))) -> c(H(h(h(g(z0))))) F(s(s(s(s(z0))))) -> c(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(h(g(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), p(g(x0)))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(s(0), q(g(0)))) F(s(s(s(x0)))) -> c(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(h(pair(s(0), s(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(h(h(g(z0)))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(x0)))) -> c(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) +'(z0, s(s(y1))) -> c16(+'(z0, s(y1))) G(s(s(y0))) -> c9(G(s(y0))) G(s(s(s(y0)))) -> c9(G(s(s(y0)))) G(s(s(0))) -> c9(G(s(0))) G(s(s(s(s(y0))))) -> c9(G(s(s(s(y0))))) G(s(s(s(0)))) -> c9(G(s(s(0)))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) G(s(s(0))) -> c1(G(s(0))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) G(s(s(0))) -> c1(+'(p(h(pair(s(0), s(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) G(s(s(0))) -> c1(H(h(pair(s(0), s(0))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(pair(s(0), s(0)))), p(pair(s(0), s(0))))))) G(s(0)) -> c7(+'(p(pair(s(0), s(0))), s(0))) S tuples: +'(z0, s(s(y1))) -> c16(+'(z0, s(y1))) K tuples: G(s(s(y0))) -> c9(G(s(y0))) G(s(s(s(y0)))) -> c9(G(s(s(y0)))) G(s(s(0))) -> c9(G(s(0))) G(s(s(s(s(y0))))) -> c9(G(s(s(s(y0))))) G(s(s(s(0)))) -> c9(G(s(s(0)))) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: G_1, F_1, H_1, +'_2 Compound Symbols: c6_2, c6_1, c_1, c7_2, c7_1, c8_2, c8_1, c10_1, c11_1, c16_1, c9_1, c1_1 ---------------------------------------- (201) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: G(s(0)) -> c7(+'(p(pair(s(0), s(0))), s(0))) ---------------------------------------- (202) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0))))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c7(+'(s(0), q(g(0)))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0))))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(s(0), q(g(0)))) H(pair(z0, z1)) -> c10(+'(z0, z1)) H(pair(z0, z1)) -> c11(+'(z0, z1)) G(s(s(s(z0)))) -> c6(H(h(h(g(z0)))), G(s(s(z0)))) G(s(s(s(z0)))) -> c6(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c6(G(s(x0))) F(s(s(s(0)))) -> c(H(h(pair(s(0), s(0))))) F(s(s(s(s(z0))))) -> c(H(h(h(g(z0))))) F(s(s(s(s(z0))))) -> c(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(h(g(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), p(g(x0)))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(s(0), q(g(0)))) F(s(s(s(x0)))) -> c(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(h(pair(s(0), s(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(h(h(g(z0)))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(x0)))) -> c(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) +'(z0, s(s(y1))) -> c16(+'(z0, s(y1))) G(s(s(y0))) -> c9(G(s(y0))) G(s(s(s(y0)))) -> c9(G(s(s(y0)))) G(s(s(0))) -> c9(G(s(0))) G(s(s(s(s(y0))))) -> c9(G(s(s(s(y0))))) G(s(s(s(0)))) -> c9(G(s(s(0)))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) G(s(s(0))) -> c1(G(s(0))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) G(s(s(0))) -> c1(+'(p(h(pair(s(0), s(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) G(s(s(0))) -> c1(H(h(pair(s(0), s(0))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(pair(s(0), s(0)))), p(pair(s(0), s(0))))))) S tuples: +'(z0, s(s(y1))) -> c16(+'(z0, s(y1))) K tuples: G(s(s(y0))) -> c9(G(s(y0))) G(s(s(s(y0)))) -> c9(G(s(s(y0)))) G(s(s(0))) -> c9(G(s(0))) G(s(s(s(s(y0))))) -> c9(G(s(s(s(y0))))) G(s(s(s(0)))) -> c9(G(s(s(0)))) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: G_1, F_1, H_1, +'_2 Compound Symbols: c6_2, c6_1, c_1, c7_2, c7_1, c8_2, c8_1, c10_1, c11_1, c16_1, c9_1, c1_1 ---------------------------------------- (203) CdtRewritingProof (BOTH BOUNDS(ID, ID)) Used rewriting to replace G(s(0)) -> c7(+'(s(0), q(g(0)))) by G(s(0)) -> c7(+'(s(0), q(pair(s(0), s(0))))) ---------------------------------------- (204) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0))))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0))))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(s(0), q(g(0)))) H(pair(z0, z1)) -> c10(+'(z0, z1)) H(pair(z0, z1)) -> c11(+'(z0, z1)) G(s(s(s(z0)))) -> c6(H(h(h(g(z0)))), G(s(s(z0)))) G(s(s(s(z0)))) -> c6(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c6(G(s(x0))) F(s(s(s(0)))) -> c(H(h(pair(s(0), s(0))))) F(s(s(s(s(z0))))) -> c(H(h(h(g(z0))))) F(s(s(s(s(z0))))) -> c(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(h(g(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), p(g(x0)))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(s(0), q(g(0)))) F(s(s(s(x0)))) -> c(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(h(pair(s(0), s(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(h(h(g(z0)))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(x0)))) -> c(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) +'(z0, s(s(y1))) -> c16(+'(z0, s(y1))) G(s(s(y0))) -> c9(G(s(y0))) G(s(s(s(y0)))) -> c9(G(s(s(y0)))) G(s(s(0))) -> c9(G(s(0))) G(s(s(s(s(y0))))) -> c9(G(s(s(s(y0))))) G(s(s(s(0)))) -> c9(G(s(s(0)))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) G(s(s(0))) -> c1(G(s(0))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) G(s(s(0))) -> c1(+'(p(h(pair(s(0), s(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) G(s(s(0))) -> c1(H(h(pair(s(0), s(0))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(pair(s(0), s(0)))), p(pair(s(0), s(0))))))) G(s(0)) -> c7(+'(s(0), q(pair(s(0), s(0))))) S tuples: +'(z0, s(s(y1))) -> c16(+'(z0, s(y1))) K tuples: G(s(s(y0))) -> c9(G(s(y0))) G(s(s(s(y0)))) -> c9(G(s(s(y0)))) G(s(s(0))) -> c9(G(s(0))) G(s(s(s(s(y0))))) -> c9(G(s(s(s(y0))))) G(s(s(s(0)))) -> c9(G(s(s(0)))) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: G_1, F_1, H_1, +'_2 Compound Symbols: c6_2, c6_1, c_1, c7_2, c8_2, c8_1, c10_1, c11_1, c16_1, c9_1, c1_1, c7_1 ---------------------------------------- (205) CdtRewritingProof (BOTH BOUNDS(ID, ID)) Used rewriting to replace G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) by G(s(0)) -> c8(+'(p(pair(s(0), s(0))), s(0))) ---------------------------------------- (206) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0))))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0))))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(s(0), q(g(0)))) H(pair(z0, z1)) -> c10(+'(z0, z1)) H(pair(z0, z1)) -> c11(+'(z0, z1)) G(s(s(s(z0)))) -> c6(H(h(h(g(z0)))), G(s(s(z0)))) G(s(s(s(z0)))) -> c6(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c6(G(s(x0))) F(s(s(s(0)))) -> c(H(h(pair(s(0), s(0))))) F(s(s(s(s(z0))))) -> c(H(h(h(g(z0))))) F(s(s(s(s(z0))))) -> c(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(h(g(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), p(g(x0)))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(s(0), q(g(0)))) F(s(s(s(x0)))) -> c(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(h(pair(s(0), s(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(h(h(g(z0)))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(x0)))) -> c(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) +'(z0, s(s(y1))) -> c16(+'(z0, s(y1))) G(s(s(y0))) -> c9(G(s(y0))) G(s(s(s(y0)))) -> c9(G(s(s(y0)))) G(s(s(0))) -> c9(G(s(0))) G(s(s(s(s(y0))))) -> c9(G(s(s(s(y0))))) G(s(s(s(0)))) -> c9(G(s(s(0)))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) G(s(s(0))) -> c1(G(s(0))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) G(s(s(0))) -> c1(+'(p(h(pair(s(0), s(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) G(s(s(0))) -> c1(H(h(pair(s(0), s(0))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(pair(s(0), s(0)))), p(pair(s(0), s(0))))))) G(s(0)) -> c7(+'(s(0), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), s(0))) S tuples: +'(z0, s(s(y1))) -> c16(+'(z0, s(y1))) K tuples: G(s(s(y0))) -> c9(G(s(y0))) G(s(s(s(y0)))) -> c9(G(s(s(y0)))) G(s(s(0))) -> c9(G(s(0))) G(s(s(s(s(y0))))) -> c9(G(s(s(s(y0))))) G(s(s(s(0)))) -> c9(G(s(s(0)))) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: G_1, F_1, H_1, +'_2 Compound Symbols: c6_2, c6_1, c_1, c7_2, c8_2, c8_1, c10_1, c11_1, c16_1, c9_1, c1_1, c7_1 ---------------------------------------- (207) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: G(s(0)) -> c8(+'(p(pair(s(0), s(0))), s(0))) ---------------------------------------- (208) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0))))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0))))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(s(0), q(g(0)))) H(pair(z0, z1)) -> c10(+'(z0, z1)) H(pair(z0, z1)) -> c11(+'(z0, z1)) G(s(s(s(z0)))) -> c6(H(h(h(g(z0)))), G(s(s(z0)))) G(s(s(s(z0)))) -> c6(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c6(G(s(x0))) F(s(s(s(0)))) -> c(H(h(pair(s(0), s(0))))) F(s(s(s(s(z0))))) -> c(H(h(h(g(z0))))) F(s(s(s(s(z0))))) -> c(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(h(g(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), p(g(x0)))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(s(0), q(g(0)))) F(s(s(s(x0)))) -> c(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(h(pair(s(0), s(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(h(h(g(z0)))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(x0)))) -> c(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) +'(z0, s(s(y1))) -> c16(+'(z0, s(y1))) G(s(s(y0))) -> c9(G(s(y0))) G(s(s(s(y0)))) -> c9(G(s(s(y0)))) G(s(s(0))) -> c9(G(s(0))) G(s(s(s(s(y0))))) -> c9(G(s(s(s(y0))))) G(s(s(s(0)))) -> c9(G(s(s(0)))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) G(s(s(0))) -> c1(G(s(0))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) G(s(s(0))) -> c1(+'(p(h(pair(s(0), s(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) G(s(s(0))) -> c1(H(h(pair(s(0), s(0))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(pair(s(0), s(0)))), p(pair(s(0), s(0))))))) G(s(0)) -> c7(+'(s(0), q(pair(s(0), s(0))))) S tuples: +'(z0, s(s(y1))) -> c16(+'(z0, s(y1))) K tuples: G(s(s(y0))) -> c9(G(s(y0))) G(s(s(s(y0)))) -> c9(G(s(s(y0)))) G(s(s(0))) -> c9(G(s(0))) G(s(s(s(s(y0))))) -> c9(G(s(s(s(y0))))) G(s(s(s(0)))) -> c9(G(s(s(0)))) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: G_1, F_1, H_1, +'_2 Compound Symbols: c6_2, c6_1, c_1, c7_2, c8_2, c8_1, c10_1, c11_1, c16_1, c9_1, c1_1, c7_1 ---------------------------------------- (209) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace H(pair(z0, z1)) -> c10(+'(z0, z1)) by H(pair(z0, s(s(y1)))) -> c10(+'(z0, s(s(y1)))) ---------------------------------------- (210) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0))))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0))))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(s(0), q(g(0)))) H(pair(z0, z1)) -> c10(+'(z0, z1)) H(pair(z0, z1)) -> c11(+'(z0, z1)) G(s(s(s(z0)))) -> c6(H(h(h(g(z0)))), G(s(s(z0)))) G(s(s(s(z0)))) -> c6(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c6(G(s(x0))) F(s(s(s(0)))) -> c(H(h(pair(s(0), s(0))))) F(s(s(s(s(z0))))) -> c(H(h(h(g(z0))))) F(s(s(s(s(z0))))) -> c(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(h(g(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), p(g(x0)))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(s(0), q(g(0)))) F(s(s(s(x0)))) -> c(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(h(pair(s(0), s(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(h(h(g(z0)))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(x0)))) -> c(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) +'(z0, s(s(y1))) -> c16(+'(z0, s(y1))) G(s(s(y0))) -> c9(G(s(y0))) G(s(s(s(y0)))) -> c9(G(s(s(y0)))) G(s(s(0))) -> c9(G(s(0))) G(s(s(s(s(y0))))) -> c9(G(s(s(s(y0))))) G(s(s(s(0)))) -> c9(G(s(s(0)))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) G(s(s(0))) -> c1(G(s(0))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) G(s(s(0))) -> c1(+'(p(h(pair(s(0), s(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) G(s(s(0))) -> c1(H(h(pair(s(0), s(0))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(pair(s(0), s(0)))), p(pair(s(0), s(0))))))) G(s(0)) -> c7(+'(s(0), q(pair(s(0), s(0))))) H(pair(z0, s(s(y1)))) -> c10(+'(z0, s(s(y1)))) S tuples: +'(z0, s(s(y1))) -> c16(+'(z0, s(y1))) K tuples: G(s(s(y0))) -> c9(G(s(y0))) G(s(s(s(y0)))) -> c9(G(s(s(y0)))) G(s(s(0))) -> c9(G(s(0))) G(s(s(s(s(y0))))) -> c9(G(s(s(s(y0))))) G(s(s(s(0)))) -> c9(G(s(s(0)))) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: G_1, F_1, H_1, +'_2 Compound Symbols: c6_2, c6_1, c_1, c7_2, c8_2, c8_1, c10_1, c11_1, c16_1, c9_1, c1_1, c7_1 ---------------------------------------- (211) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace H(pair(z0, z1)) -> c10(+'(z0, z1)) by H(pair(z0, s(s(y1)))) -> c10(+'(z0, s(s(y1)))) ---------------------------------------- (212) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0))))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0))))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(s(0), q(g(0)))) H(pair(z0, z1)) -> c11(+'(z0, z1)) G(s(s(s(z0)))) -> c6(H(h(h(g(z0)))), G(s(s(z0)))) G(s(s(s(z0)))) -> c6(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c6(G(s(x0))) F(s(s(s(0)))) -> c(H(h(pair(s(0), s(0))))) F(s(s(s(s(z0))))) -> c(H(h(h(g(z0))))) F(s(s(s(s(z0))))) -> c(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(h(g(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), p(g(x0)))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(s(0), q(g(0)))) F(s(s(s(x0)))) -> c(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(h(pair(s(0), s(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(h(h(g(z0)))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(x0)))) -> c(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) +'(z0, s(s(y1))) -> c16(+'(z0, s(y1))) G(s(s(y0))) -> c9(G(s(y0))) G(s(s(s(y0)))) -> c9(G(s(s(y0)))) G(s(s(0))) -> c9(G(s(0))) G(s(s(s(s(y0))))) -> c9(G(s(s(s(y0))))) G(s(s(s(0)))) -> c9(G(s(s(0)))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) G(s(s(0))) -> c1(G(s(0))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) G(s(s(0))) -> c1(+'(p(h(pair(s(0), s(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) G(s(s(0))) -> c1(H(h(pair(s(0), s(0))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(pair(s(0), s(0)))), p(pair(s(0), s(0))))))) G(s(0)) -> c7(+'(s(0), q(pair(s(0), s(0))))) H(pair(z0, s(s(y1)))) -> c10(+'(z0, s(s(y1)))) S tuples: +'(z0, s(s(y1))) -> c16(+'(z0, s(y1))) K tuples: G(s(s(y0))) -> c9(G(s(y0))) G(s(s(s(y0)))) -> c9(G(s(s(y0)))) G(s(s(0))) -> c9(G(s(0))) G(s(s(s(s(y0))))) -> c9(G(s(s(s(y0))))) G(s(s(s(0)))) -> c9(G(s(s(0)))) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: G_1, F_1, H_1, +'_2 Compound Symbols: c6_2, c6_1, c_1, c7_2, c8_2, c8_1, c11_1, c16_1, c9_1, c1_1, c7_1, c10_1 ---------------------------------------- (213) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace H(pair(z0, z1)) -> c11(+'(z0, z1)) by H(pair(z0, s(s(y1)))) -> c11(+'(z0, s(s(y1)))) ---------------------------------------- (214) Obligation: Complexity Dependency Tuples Problem Rules: g(0) -> pair(s(0), s(0)) g(s(z0)) -> h(g(z0)) g(s(z0)) -> pair(+(p(g(z0)), q(g(z0))), p(g(z0))) h(z0) -> pair(+(p(z0), q(z0)), p(z0)) +(z0, 0) -> z0 +(z0, s(z1)) -> s(+(z0, z1)) p(pair(z0, z1)) -> z0 q(pair(z0, z1)) -> z1 Tuples: G(s(s(z0))) -> c6(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), G(s(z0))) G(s(0)) -> c6(H(pair(s(0), s(0)))) F(s(s(s(z0)))) -> c(H(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0))))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c7(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c7(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(x0))) -> c7(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c7(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c7(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0))))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(h(g(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(h(g(z0)))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0)))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(g(s(x0))), p(g(x0))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0)))))), G(s(s(z0)))) G(s(s(z0))) -> c8(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(z0))) -> c8(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(z0))) G(s(s(x0))) -> c8(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(h(h(g(z0)))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c8(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0)))), G(s(x0))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(s(s(z0)))) -> c8(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0))))), G(s(s(z0)))) G(s(0)) -> c8(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) G(s(0)) -> c8(+'(s(0), q(g(0)))) H(pair(z0, z1)) -> c11(+'(z0, z1)) G(s(s(s(z0)))) -> c6(H(h(h(g(z0)))), G(s(s(z0)))) G(s(s(s(z0)))) -> c6(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), G(s(s(z0)))) G(s(s(x0))) -> c6(G(s(x0))) F(s(s(s(0)))) -> c(H(h(pair(s(0), s(0))))) F(s(s(s(s(z0))))) -> c(H(h(h(g(z0))))) F(s(s(s(s(z0))))) -> c(H(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(p(pair(s(0), s(0))), q(pair(s(0), s(0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), q(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(h(g(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(h(g(z0))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(h(g(z0))))) F(s(s(s(x0)))) -> c(+'(p(g(s(x0))), p(g(x0)))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(s(z0))))) -> c(+'(p(g(s(s(z0)))), q(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))))) F(s(s(s(0)))) -> c(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) F(s(s(s(z0)))) -> c(+'(p(h(g(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(s(z0)))) -> c(+'(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))) F(s(s(0))) -> c(+'(s(0), q(g(0)))) F(s(s(s(x0)))) -> c(+'(p(pair(+(p(g(x0)), q(g(x0))), p(g(x0)))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(h(pair(s(0), s(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(h(h(g(z0)))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(h(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(x0)))) -> c(+'(+(p(g(x0)), q(g(x0))), q(g(s(x0))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(h(g(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(g(s(z0)))), p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(h(g(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(g(s(z0))), q(pair(+(p(g(z0)), q(g(z0))), p(g(z0))))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(0)))) -> c(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(h(g(z0))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) F(s(s(s(s(z0))))) -> c(+'(p(pair(+(p(pair(+(p(g(z0)), q(g(z0))), p(g(z0)))), q(g(s(z0)))), p(g(s(z0))))), q(g(s(s(z0)))))) +'(z0, s(s(y1))) -> c16(+'(z0, s(y1))) G(s(s(y0))) -> c9(G(s(y0))) G(s(s(s(y0)))) -> c9(G(s(s(y0)))) G(s(s(0))) -> c9(G(s(0))) G(s(s(s(s(y0))))) -> c9(G(s(s(s(y0))))) G(s(s(s(0)))) -> c9(G(s(s(0)))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))))) G(s(s(0))) -> c1(G(s(0))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))))) G(s(s(0))) -> c1(+'(p(h(pair(s(0), s(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(g(0)), q(g(0))), p(pair(s(0), s(0))))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(g(0)), q(pair(s(0), s(0)))), p(g(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(pair(+(p(pair(s(0), s(0))), q(g(0))), p(g(0)))), q(g(s(0))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(h(pair(s(0), s(0)))))) G(s(s(0))) -> c1(H(h(pair(s(0), s(0))))) G(s(s(0))) -> c1(+'(p(g(s(0))), q(pair(+(p(pair(s(0), s(0))), q(pair(s(0), s(0)))), p(pair(s(0), s(0))))))) G(s(0)) -> c7(+'(s(0), q(pair(s(0), s(0))))) H(pair(z0, s(s(y1)))) -> c10(+'(z0, s(s(y1)))) H(pair(z0, s(s(y1)))) -> c11(+'(z0, s(s(y1)))) S tuples: +'(z0, s(s(y1))) -> c16(+'(z0, s(y1))) K tuples: G(s(s(y0))) -> c9(G(s(y0))) G(s(s(s(y0)))) -> c9(G(s(s(y0)))) G(s(s(0))) -> c9(G(s(0))) G(s(s(s(s(y0))))) -> c9(G(s(s(s(y0))))) G(s(s(s(0)))) -> c9(G(s(s(0)))) Defined Rule Symbols: g_1, h_1, +_2, p_1, q_1 Defined Pair Symbols: G_1, F_1, H_1, +'_2 Compound Symbols: c6_2, c6_1, c_1, c7_2, c8_2, c8_1, c11_1, c16_1, c9_1, c1_1, c7_1, c10_1 ---------------------------------------- (215) RelTrsToWeightedTrsProof (UPPER BOUND(ID)) Transformed relative TRS to weighted TRS ---------------------------------------- (216) 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: f(0) -> 0 [1] f(s(0)) -> s(0) [1] f(s(s(x))) -> p(h(g(x))) [1] g(0) -> pair(s(0), s(0)) [1] g(s(x)) -> h(g(x)) [1] h(x) -> pair(+(p(x), q(x)), p(x)) [1] p(pair(x, y)) -> x [1] q(pair(x, y)) -> y [1] +(x, 0) -> x [1] +(x, s(y)) -> s(+(x, y)) [1] f(s(s(x))) -> +(p(g(x)), q(g(x))) [1] g(s(x)) -> pair(+(p(g(x)), q(g(x))), p(g(x))) [1] Rewrite Strategy: INNERMOST ---------------------------------------- (217) CpxWeightedTrsRenamingProof (BOTH BOUNDS(ID, ID)) Renamed defined symbols to avoid conflicts with arithmetic symbols: + => plus ---------------------------------------- (218) 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: f(0) -> 0 [1] f(s(0)) -> s(0) [1] f(s(s(x))) -> p(h(g(x))) [1] g(0) -> pair(s(0), s(0)) [1] g(s(x)) -> h(g(x)) [1] h(x) -> pair(plus(p(x), q(x)), p(x)) [1] p(pair(x, y)) -> x [1] q(pair(x, y)) -> y [1] plus(x, 0) -> x [1] plus(x, s(y)) -> s(plus(x, y)) [1] f(s(s(x))) -> plus(p(g(x)), q(g(x))) [1] g(s(x)) -> pair(plus(p(g(x)), q(g(x))), p(g(x))) [1] Rewrite Strategy: INNERMOST ---------------------------------------- (219) TypeInferenceProof (BOTH BOUNDS(ID, ID)) Infered types. ---------------------------------------- (220) Obligation: Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules: f(0) -> 0 [1] f(s(0)) -> s(0) [1] f(s(s(x))) -> p(h(g(x))) [1] g(0) -> pair(s(0), s(0)) [1] g(s(x)) -> h(g(x)) [1] h(x) -> pair(plus(p(x), q(x)), p(x)) [1] p(pair(x, y)) -> x [1] q(pair(x, y)) -> y [1] plus(x, 0) -> x [1] plus(x, s(y)) -> s(plus(x, y)) [1] f(s(s(x))) -> plus(p(g(x)), q(g(x))) [1] g(s(x)) -> pair(plus(p(g(x)), q(g(x))), p(g(x))) [1] The TRS has the following type information: f :: 0:s -> 0:s 0 :: 0:s s :: 0:s -> 0:s p :: pair -> 0:s h :: pair -> pair g :: 0:s -> pair pair :: 0:s -> 0:s -> pair plus :: 0:s -> 0:s -> 0:s q :: pair -> 0:s Rewrite Strategy: INNERMOST ---------------------------------------- (221) 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: f_1 (c) The following functions are completely defined: h_1 g_1 p_1 q_1 plus_2 Due to the following rules being added: p(v0) -> 0 [0] q(v0) -> 0 [0] And the following fresh constants: const ---------------------------------------- (222) 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: f(0) -> 0 [1] f(s(0)) -> s(0) [1] f(s(s(x))) -> p(h(g(x))) [1] g(0) -> pair(s(0), s(0)) [1] g(s(x)) -> h(g(x)) [1] h(x) -> pair(plus(p(x), q(x)), p(x)) [1] p(pair(x, y)) -> x [1] q(pair(x, y)) -> y [1] plus(x, 0) -> x [1] plus(x, s(y)) -> s(plus(x, y)) [1] f(s(s(x))) -> plus(p(g(x)), q(g(x))) [1] g(s(x)) -> pair(plus(p(g(x)), q(g(x))), p(g(x))) [1] p(v0) -> 0 [0] q(v0) -> 0 [0] The TRS has the following type information: f :: 0:s -> 0:s 0 :: 0:s s :: 0:s -> 0:s p :: pair -> 0:s h :: pair -> pair g :: 0:s -> pair pair :: 0:s -> 0:s -> pair plus :: 0:s -> 0:s -> 0:s q :: pair -> 0:s const :: pair Rewrite Strategy: INNERMOST ---------------------------------------- (223) NarrowingProof (BOTH BOUNDS(ID, ID)) Narrowed the inner basic terms of all right-hand sides by a single narrowing step. ---------------------------------------- (224) 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: f(0) -> 0 [1] f(s(0)) -> s(0) [1] f(s(s(0))) -> p(h(pair(s(0), s(0)))) [2] f(s(s(s(x')))) -> p(h(h(g(x')))) [2] f(s(s(s(x'')))) -> p(h(pair(plus(p(g(x'')), q(g(x''))), p(g(x''))))) [2] g(0) -> pair(s(0), s(0)) [1] g(s(0)) -> h(pair(s(0), s(0))) [2] g(s(s(x1))) -> h(h(g(x1))) [2] g(s(s(x2))) -> h(pair(plus(p(g(x2)), q(g(x2))), p(g(x2)))) [2] h(pair(x3, y')) -> pair(plus(x3, y'), p(pair(x3, y'))) [3] h(pair(x3, y')) -> pair(plus(x3, 0), p(pair(x3, y'))) [2] h(pair(x4, y'')) -> pair(plus(0, y''), p(pair(x4, y''))) [2] h(x) -> pair(plus(0, 0), p(x)) [1] p(pair(x, y)) -> x [1] q(pair(x, y)) -> y [1] plus(x, 0) -> x [1] plus(x, s(y)) -> s(plus(x, y)) [1] f(s(s(0))) -> plus(p(pair(s(0), s(0))), q(pair(s(0), s(0)))) [3] f(s(s(s(x5)))) -> plus(p(h(g(x5))), q(h(g(x5)))) [3] f(s(s(s(x5)))) -> plus(p(h(g(x5))), q(pair(plus(p(g(x5)), q(g(x5))), p(g(x5))))) [3] f(s(s(s(x6)))) -> plus(p(pair(plus(p(g(x6)), q(g(x6))), p(g(x6)))), q(h(g(x6)))) [3] f(s(s(s(x6)))) -> plus(p(pair(plus(p(g(x6)), q(g(x6))), p(g(x6)))), q(pair(plus(p(g(x6)), q(g(x6))), p(g(x6))))) [3] g(s(0)) -> pair(plus(p(pair(s(0), s(0))), q(pair(s(0), s(0)))), p(pair(s(0), s(0)))) [4] g(s(s(x7))) -> pair(plus(p(h(g(x7))), q(h(g(x7)))), p(h(g(x7)))) [4] g(s(s(x7))) -> pair(plus(p(h(g(x7))), q(h(g(x7)))), p(pair(plus(p(g(x7)), q(g(x7))), p(g(x7))))) [4] g(s(s(x7))) -> pair(plus(p(h(g(x7))), q(pair(plus(p(g(x7)), q(g(x7))), p(g(x7))))), p(h(g(x7)))) [4] g(s(s(x7))) -> pair(plus(p(h(g(x7))), q(pair(plus(p(g(x7)), q(g(x7))), p(g(x7))))), p(pair(plus(p(g(x7)), q(g(x7))), p(g(x7))))) [4] g(s(s(x8))) -> pair(plus(p(pair(plus(p(g(x8)), q(g(x8))), p(g(x8)))), q(h(g(x8)))), p(h(g(x8)))) [4] g(s(s(x8))) -> pair(plus(p(pair(plus(p(g(x8)), q(g(x8))), p(g(x8)))), q(h(g(x8)))), p(pair(plus(p(g(x8)), q(g(x8))), p(g(x8))))) [4] g(s(s(x8))) -> pair(plus(p(pair(plus(p(g(x8)), q(g(x8))), p(g(x8)))), q(pair(plus(p(g(x8)), q(g(x8))), p(g(x8))))), p(h(g(x8)))) [4] g(s(s(x8))) -> pair(plus(p(pair(plus(p(g(x8)), q(g(x8))), p(g(x8)))), q(pair(plus(p(g(x8)), q(g(x8))), p(g(x8))))), p(pair(plus(p(g(x8)), q(g(x8))), p(g(x8))))) [4] p(v0) -> 0 [0] q(v0) -> 0 [0] The TRS has the following type information: f :: 0:s -> 0:s 0 :: 0:s s :: 0:s -> 0:s p :: pair -> 0:s h :: pair -> pair g :: 0:s -> pair pair :: 0:s -> 0:s -> pair plus :: 0:s -> 0:s -> 0:s q :: pair -> 0:s const :: pair Rewrite Strategy: INNERMOST ---------------------------------------- (225) 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 const => 0 ---------------------------------------- (226) Obligation: Complexity RNTS consisting of the following rules: f(z) -{ 3 }-> plus(p(h(g(x5))), q(h(g(x5)))) :|: z = 1 + (1 + (1 + x5)), x5 >= 0 f(z) -{ 3 }-> plus(p(h(g(x5))), q(1 + plus(p(g(x5)), q(g(x5))) + p(g(x5)))) :|: z = 1 + (1 + (1 + x5)), x5 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(x6)), q(g(x6))) + p(g(x6))), q(h(g(x6)))) :|: x6 >= 0, z = 1 + (1 + (1 + x6)) f(z) -{ 3 }-> plus(p(1 + plus(p(g(x6)), q(g(x6))) + p(g(x6))), q(1 + plus(p(g(x6)), q(g(x6))) + p(g(x6)))) :|: x6 >= 0, z = 1 + (1 + (1 + x6)) f(z) -{ 3 }-> plus(p(1 + (1 + 0) + (1 + 0)), q(1 + (1 + 0) + (1 + 0))) :|: z = 1 + (1 + 0) f(z) -{ 2 }-> p(h(h(g(x')))) :|: z = 1 + (1 + (1 + x')), x' >= 0 f(z) -{ 2 }-> p(h(1 + plus(p(g(x'')), q(g(x''))) + p(g(x'')))) :|: x'' >= 0, z = 1 + (1 + (1 + x'')) f(z) -{ 2 }-> p(h(1 + (1 + 0) + (1 + 0))) :|: z = 1 + (1 + 0) f(z) -{ 1 }-> 0 :|: z = 0 f(z) -{ 1 }-> 1 + 0 :|: z = 1 + 0 g(z) -{ 2 }-> h(h(g(x1))) :|: z = 1 + (1 + x1), x1 >= 0 g(z) -{ 2 }-> h(1 + plus(p(g(x2)), q(g(x2))) + p(g(x2))) :|: z = 1 + (1 + x2), x2 >= 0 g(z) -{ 2 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 4 }-> 1 + plus(p(h(g(x7))), q(h(g(x7)))) + p(h(g(x7))) :|: x7 >= 0, z = 1 + (1 + x7) g(z) -{ 4 }-> 1 + plus(p(h(g(x7))), q(h(g(x7)))) + p(1 + plus(p(g(x7)), q(g(x7))) + p(g(x7))) :|: x7 >= 0, z = 1 + (1 + x7) g(z) -{ 4 }-> 1 + plus(p(h(g(x7))), q(1 + plus(p(g(x7)), q(g(x7))) + p(g(x7)))) + p(h(g(x7))) :|: x7 >= 0, z = 1 + (1 + x7) g(z) -{ 4 }-> 1 + plus(p(h(g(x7))), q(1 + plus(p(g(x7)), q(g(x7))) + p(g(x7)))) + p(1 + plus(p(g(x7)), q(g(x7))) + p(g(x7))) :|: x7 >= 0, z = 1 + (1 + x7) g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(x8)), q(g(x8))) + p(g(x8))), q(h(g(x8)))) + p(h(g(x8))) :|: x8 >= 0, z = 1 + (1 + x8) g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(x8)), q(g(x8))) + p(g(x8))), q(h(g(x8)))) + p(1 + plus(p(g(x8)), q(g(x8))) + p(g(x8))) :|: x8 >= 0, z = 1 + (1 + x8) g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(x8)), q(g(x8))) + p(g(x8))), q(1 + plus(p(g(x8)), q(g(x8))) + p(g(x8)))) + p(h(g(x8))) :|: x8 >= 0, z = 1 + (1 + x8) g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(x8)), q(g(x8))) + p(g(x8))), q(1 + plus(p(g(x8)), q(g(x8))) + p(g(x8)))) + p(1 + plus(p(g(x8)), q(g(x8))) + p(g(x8))) :|: x8 >= 0, z = 1 + (1 + x8) g(z) -{ 4 }-> 1 + plus(p(1 + (1 + 0) + (1 + 0)), q(1 + (1 + 0) + (1 + 0))) + p(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 1 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 3 }-> 1 + plus(x3, y') + p(1 + x3 + y') :|: y' >= 0, z = 1 + x3 + y', x3 >= 0 h(z) -{ 2 }-> 1 + plus(x3, 0) + p(1 + x3 + y') :|: y' >= 0, z = 1 + x3 + y', x3 >= 0 h(z) -{ 2 }-> 1 + plus(0, y'') + p(1 + x4 + y'') :|: z = 1 + x4 + y'', x4 >= 0, y'' >= 0 h(z) -{ 1 }-> 1 + plus(0, 0) + p(x) :|: x >= 0, z = x p(z) -{ 1 }-> x :|: z = 1 + x + y, x >= 0, y >= 0 p(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 plus(z, z') -{ 1 }-> x :|: x >= 0, z = x, z' = 0 plus(z, z') -{ 1 }-> 1 + plus(x, y) :|: z' = 1 + y, x >= 0, y >= 0, z = x q(z) -{ 1 }-> y :|: z = 1 + x + y, x >= 0, y >= 0 q(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 ---------------------------------------- (227) InliningProof (UPPER BOUND(ID)) Inlined the following terminating rules on right-hand sides where appropriate: p(z) -{ 1 }-> x :|: z = 1 + x + y, x >= 0, y >= 0 p(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 q(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 q(z) -{ 1 }-> y :|: z = 1 + x + y, x >= 0, y >= 0 ---------------------------------------- (228) Obligation: Complexity RNTS consisting of the following rules: f(z) -{ 5 }-> plus(x, y') :|: z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 f(z) -{ 4 }-> plus(x, 0) :|: z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 f(z) -{ 3 }-> plus(p(h(g(x5))), q(h(g(x5)))) :|: z = 1 + (1 + (1 + x5)), x5 >= 0 f(z) -{ 3 }-> plus(p(h(g(x5))), q(1 + plus(p(g(x5)), q(g(x5))) + p(g(x5)))) :|: z = 1 + (1 + (1 + x5)), x5 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(x6)), q(g(x6))) + p(g(x6))), q(h(g(x6)))) :|: x6 >= 0, z = 1 + (1 + (1 + x6)) f(z) -{ 3 }-> plus(p(1 + plus(p(g(x6)), q(g(x6))) + p(g(x6))), q(1 + plus(p(g(x6)), q(g(x6))) + p(g(x6)))) :|: x6 >= 0, z = 1 + (1 + (1 + x6)) f(z) -{ 4 }-> plus(0, y) :|: z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 f(z) -{ 3 }-> plus(0, 0) :|: z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' f(z) -{ 2 }-> p(h(h(g(x')))) :|: z = 1 + (1 + (1 + x')), x' >= 0 f(z) -{ 2 }-> p(h(1 + plus(p(g(x'')), q(g(x''))) + p(g(x'')))) :|: x'' >= 0, z = 1 + (1 + (1 + x'')) f(z) -{ 2 }-> p(h(1 + (1 + 0) + (1 + 0))) :|: z = 1 + (1 + 0) f(z) -{ 1 }-> 0 :|: z = 0 f(z) -{ 1 }-> 1 + 0 :|: z = 1 + 0 g(z) -{ 2 }-> h(h(g(x1))) :|: z = 1 + (1 + x1), x1 >= 0 g(z) -{ 2 }-> h(1 + plus(p(g(x2)), q(g(x2))) + p(g(x2))) :|: z = 1 + (1 + x2), x2 >= 0 g(z) -{ 2 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 6 }-> 1 + plus(x, y') + 0 :|: z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 7 }-> 1 + plus(x, y'') + x' :|: z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x'' + y'', x'' >= 0, y'' >= 0 g(z) -{ 6 }-> 1 + plus(x, 0) + x' :|: z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 g(z) -{ 5 }-> 1 + plus(x, 0) + 0 :|: z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 4 }-> 1 + plus(p(h(g(x7))), q(h(g(x7)))) + p(h(g(x7))) :|: x7 >= 0, z = 1 + (1 + x7) g(z) -{ 4 }-> 1 + plus(p(h(g(x7))), q(h(g(x7)))) + p(1 + plus(p(g(x7)), q(g(x7))) + p(g(x7))) :|: x7 >= 0, z = 1 + (1 + x7) g(z) -{ 4 }-> 1 + plus(p(h(g(x7))), q(1 + plus(p(g(x7)), q(g(x7))) + p(g(x7)))) + p(h(g(x7))) :|: x7 >= 0, z = 1 + (1 + x7) g(z) -{ 4 }-> 1 + plus(p(h(g(x7))), q(1 + plus(p(g(x7)), q(g(x7))) + p(g(x7)))) + p(1 + plus(p(g(x7)), q(g(x7))) + p(g(x7))) :|: x7 >= 0, z = 1 + (1 + x7) g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(x8)), q(g(x8))) + p(g(x8))), q(h(g(x8)))) + p(h(g(x8))) :|: x8 >= 0, z = 1 + (1 + x8) g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(x8)), q(g(x8))) + p(g(x8))), q(h(g(x8)))) + p(1 + plus(p(g(x8)), q(g(x8))) + p(g(x8))) :|: x8 >= 0, z = 1 + (1 + x8) g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(x8)), q(g(x8))) + p(g(x8))), q(1 + plus(p(g(x8)), q(g(x8))) + p(g(x8)))) + p(h(g(x8))) :|: x8 >= 0, z = 1 + (1 + x8) g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(x8)), q(g(x8))) + p(g(x8))), q(1 + plus(p(g(x8)), q(g(x8))) + p(g(x8)))) + p(1 + plus(p(g(x8)), q(g(x8))) + p(g(x8))) :|: x8 >= 0, z = 1 + (1 + x8) g(z) -{ 5 }-> 1 + plus(0, y) + 0 :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 g(z) -{ 6 }-> 1 + plus(0, y') + x :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 5 }-> 1 + plus(0, 0) + x :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 4 }-> 1 + plus(0, 0) + 0 :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', v0'' >= 0, 1 + (1 + 0) + (1 + 0) = v0'' g(z) -{ 1 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 4 }-> 1 + plus(x3, y') + x :|: y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 3 }-> 1 + plus(x3, y') + 0 :|: y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 3 }-> 1 + plus(x3, 0) + x :|: y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 2 }-> 1 + plus(x3, 0) + 0 :|: y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 3 }-> 1 + plus(0, y'') + x :|: z = 1 + x4 + y'', x4 >= 0, y'' >= 0, 1 + x4 + y'' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 2 }-> 1 + plus(0, y'') + 0 :|: z = 1 + x4 + y'', x4 >= 0, y'' >= 0, v0 >= 0, 1 + x4 + y'' = v0 h(z) -{ 2 }-> 1 + plus(0, 0) + x' :|: x >= 0, z = x, x = 1 + x' + y, x' >= 0, y >= 0 h(z) -{ 1 }-> 1 + plus(0, 0) + 0 :|: x >= 0, z = x, v0 >= 0, x = v0 p(z) -{ 1 }-> x :|: z = 1 + x + y, x >= 0, y >= 0 p(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 plus(z, z') -{ 1 }-> x :|: x >= 0, z = x, z' = 0 plus(z, z') -{ 1 }-> 1 + plus(x, y) :|: z' = 1 + y, x >= 0, y >= 0, z = x q(z) -{ 1 }-> y :|: z = 1 + x + y, x >= 0, y >= 0 q(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 ---------------------------------------- (229) SimplificationProof (BOTH BOUNDS(ID, ID)) Simplified the RNTS by moving equalities from the constraints into the right-hand sides. ---------------------------------------- (230) Obligation: Complexity RNTS consisting of the following rules: f(z) -{ 5 }-> plus(x, y') :|: z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 f(z) -{ 4 }-> plus(x, 0) :|: z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 4 }-> plus(0, y) :|: z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 f(z) -{ 3 }-> plus(0, 0) :|: z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' f(z) -{ 2 }-> p(h(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + (1 + 0) + (1 + 0))) :|: z = 1 + (1 + 0) f(z) -{ 1 }-> 0 :|: z = 0 f(z) -{ 1 }-> 1 + 0 :|: z = 1 + 0 g(z) -{ 2 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 6 }-> 1 + plus(x, y') + 0 :|: z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 7 }-> 1 + plus(x, y'') + x' :|: z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x'' + y'', x'' >= 0, y'' >= 0 g(z) -{ 6 }-> 1 + plus(x, 0) + x' :|: z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 g(z) -{ 5 }-> 1 + plus(x, 0) + 0 :|: z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 5 }-> 1 + plus(0, y) + 0 :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 g(z) -{ 6 }-> 1 + plus(0, y') + x :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 5 }-> 1 + plus(0, 0) + x :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 4 }-> 1 + plus(0, 0) + 0 :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', v0'' >= 0, 1 + (1 + 0) + (1 + 0) = v0'' g(z) -{ 1 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 4 }-> 1 + plus(x3, y') + x :|: y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 3 }-> 1 + plus(x3, y') + 0 :|: y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 3 }-> 1 + plus(x3, 0) + x :|: y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 2 }-> 1 + plus(x3, 0) + 0 :|: y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 3 }-> 1 + plus(0, y'') + x :|: z = 1 + x4 + y'', x4 >= 0, y'' >= 0, 1 + x4 + y'' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 2 }-> 1 + plus(0, y'') + 0 :|: z = 1 + x4 + y'', x4 >= 0, y'' >= 0, v0 >= 0, 1 + x4 + y'' = v0 h(z) -{ 2 }-> 1 + plus(0, 0) + x' :|: z >= 0, z = 1 + x' + y, x' >= 0, y >= 0 h(z) -{ 1 }-> 1 + plus(0, 0) + 0 :|: z >= 0 p(z) -{ 1 }-> x :|: z = 1 + x + y, x >= 0, y >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 1 }-> 1 + plus(z, z' - 1) :|: z >= 0, z' - 1 >= 0 q(z) -{ 1 }-> y :|: z = 1 + x + y, x >= 0, y >= 0 q(z) -{ 0 }-> 0 :|: z >= 0 ---------------------------------------- (231) CpxRntsAnalysisOrderProof (BOTH BOUNDS(ID, ID)) Found the following analysis order by SCC decomposition: { plus } { q } { p } { h } { g } { f } ---------------------------------------- (232) Obligation: Complexity RNTS consisting of the following rules: f(z) -{ 5 }-> plus(x, y') :|: z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 f(z) -{ 4 }-> plus(x, 0) :|: z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 4 }-> plus(0, y) :|: z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 f(z) -{ 3 }-> plus(0, 0) :|: z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' f(z) -{ 2 }-> p(h(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + (1 + 0) + (1 + 0))) :|: z = 1 + (1 + 0) f(z) -{ 1 }-> 0 :|: z = 0 f(z) -{ 1 }-> 1 + 0 :|: z = 1 + 0 g(z) -{ 2 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 6 }-> 1 + plus(x, y') + 0 :|: z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 7 }-> 1 + plus(x, y'') + x' :|: z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x'' + y'', x'' >= 0, y'' >= 0 g(z) -{ 6 }-> 1 + plus(x, 0) + x' :|: z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 g(z) -{ 5 }-> 1 + plus(x, 0) + 0 :|: z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 5 }-> 1 + plus(0, y) + 0 :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 g(z) -{ 6 }-> 1 + plus(0, y') + x :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 5 }-> 1 + plus(0, 0) + x :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 4 }-> 1 + plus(0, 0) + 0 :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', v0'' >= 0, 1 + (1 + 0) + (1 + 0) = v0'' g(z) -{ 1 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 4 }-> 1 + plus(x3, y') + x :|: y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 3 }-> 1 + plus(x3, y') + 0 :|: y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 3 }-> 1 + plus(x3, 0) + x :|: y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 2 }-> 1 + plus(x3, 0) + 0 :|: y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 3 }-> 1 + plus(0, y'') + x :|: z = 1 + x4 + y'', x4 >= 0, y'' >= 0, 1 + x4 + y'' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 2 }-> 1 + plus(0, y'') + 0 :|: z = 1 + x4 + y'', x4 >= 0, y'' >= 0, v0 >= 0, 1 + x4 + y'' = v0 h(z) -{ 2 }-> 1 + plus(0, 0) + x' :|: z >= 0, z = 1 + x' + y, x' >= 0, y >= 0 h(z) -{ 1 }-> 1 + plus(0, 0) + 0 :|: z >= 0 p(z) -{ 1 }-> x :|: z = 1 + x + y, x >= 0, y >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 1 }-> 1 + plus(z, z' - 1) :|: z >= 0, z' - 1 >= 0 q(z) -{ 1 }-> y :|: z = 1 + x + y, x >= 0, y >= 0 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {plus}, {q}, {p}, {h}, {g}, {f} ---------------------------------------- (233) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (234) Obligation: Complexity RNTS consisting of the following rules: f(z) -{ 5 }-> plus(x, y') :|: z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 f(z) -{ 4 }-> plus(x, 0) :|: z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 4 }-> plus(0, y) :|: z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 f(z) -{ 3 }-> plus(0, 0) :|: z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' f(z) -{ 2 }-> p(h(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + (1 + 0) + (1 + 0))) :|: z = 1 + (1 + 0) f(z) -{ 1 }-> 0 :|: z = 0 f(z) -{ 1 }-> 1 + 0 :|: z = 1 + 0 g(z) -{ 2 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 6 }-> 1 + plus(x, y') + 0 :|: z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 7 }-> 1 + plus(x, y'') + x' :|: z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x'' + y'', x'' >= 0, y'' >= 0 g(z) -{ 6 }-> 1 + plus(x, 0) + x' :|: z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 g(z) -{ 5 }-> 1 + plus(x, 0) + 0 :|: z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 5 }-> 1 + plus(0, y) + 0 :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 g(z) -{ 6 }-> 1 + plus(0, y') + x :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 5 }-> 1 + plus(0, 0) + x :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 4 }-> 1 + plus(0, 0) + 0 :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', v0'' >= 0, 1 + (1 + 0) + (1 + 0) = v0'' g(z) -{ 1 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 4 }-> 1 + plus(x3, y') + x :|: y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 3 }-> 1 + plus(x3, y') + 0 :|: y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 3 }-> 1 + plus(x3, 0) + x :|: y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 2 }-> 1 + plus(x3, 0) + 0 :|: y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 3 }-> 1 + plus(0, y'') + x :|: z = 1 + x4 + y'', x4 >= 0, y'' >= 0, 1 + x4 + y'' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 2 }-> 1 + plus(0, y'') + 0 :|: z = 1 + x4 + y'', x4 >= 0, y'' >= 0, v0 >= 0, 1 + x4 + y'' = v0 h(z) -{ 2 }-> 1 + plus(0, 0) + x' :|: z >= 0, z = 1 + x' + y, x' >= 0, y >= 0 h(z) -{ 1 }-> 1 + plus(0, 0) + 0 :|: z >= 0 p(z) -{ 1 }-> x :|: z = 1 + x + y, x >= 0, y >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 1 }-> 1 + plus(z, z' - 1) :|: z >= 0, z' - 1 >= 0 q(z) -{ 1 }-> y :|: z = 1 + x + y, x >= 0, y >= 0 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {plus}, {q}, {p}, {h}, {g}, {f} ---------------------------------------- (235) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: plus after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: z + z' ---------------------------------------- (236) Obligation: Complexity RNTS consisting of the following rules: f(z) -{ 5 }-> plus(x, y') :|: z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 f(z) -{ 4 }-> plus(x, 0) :|: z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 4 }-> plus(0, y) :|: z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 f(z) -{ 3 }-> plus(0, 0) :|: z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' f(z) -{ 2 }-> p(h(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + (1 + 0) + (1 + 0))) :|: z = 1 + (1 + 0) f(z) -{ 1 }-> 0 :|: z = 0 f(z) -{ 1 }-> 1 + 0 :|: z = 1 + 0 g(z) -{ 2 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 6 }-> 1 + plus(x, y') + 0 :|: z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 7 }-> 1 + plus(x, y'') + x' :|: z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x'' + y'', x'' >= 0, y'' >= 0 g(z) -{ 6 }-> 1 + plus(x, 0) + x' :|: z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 g(z) -{ 5 }-> 1 + plus(x, 0) + 0 :|: z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 5 }-> 1 + plus(0, y) + 0 :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 g(z) -{ 6 }-> 1 + plus(0, y') + x :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 5 }-> 1 + plus(0, 0) + x :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 4 }-> 1 + plus(0, 0) + 0 :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', v0'' >= 0, 1 + (1 + 0) + (1 + 0) = v0'' g(z) -{ 1 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 4 }-> 1 + plus(x3, y') + x :|: y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 3 }-> 1 + plus(x3, y') + 0 :|: y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 3 }-> 1 + plus(x3, 0) + x :|: y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 2 }-> 1 + plus(x3, 0) + 0 :|: y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 3 }-> 1 + plus(0, y'') + x :|: z = 1 + x4 + y'', x4 >= 0, y'' >= 0, 1 + x4 + y'' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 2 }-> 1 + plus(0, y'') + 0 :|: z = 1 + x4 + y'', x4 >= 0, y'' >= 0, v0 >= 0, 1 + x4 + y'' = v0 h(z) -{ 2 }-> 1 + plus(0, 0) + x' :|: z >= 0, z = 1 + x' + y, x' >= 0, y >= 0 h(z) -{ 1 }-> 1 + plus(0, 0) + 0 :|: z >= 0 p(z) -{ 1 }-> x :|: z = 1 + x + y, x >= 0, y >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 1 }-> 1 + plus(z, z' - 1) :|: z >= 0, z' - 1 >= 0 q(z) -{ 1 }-> y :|: z = 1 + x + y, x >= 0, y >= 0 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {plus}, {q}, {p}, {h}, {g}, {f} Previous analysis results are: plus: runtime: ?, size: O(n^1) [z + z'] ---------------------------------------- (237) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: plus after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 1 + z' ---------------------------------------- (238) Obligation: Complexity RNTS consisting of the following rules: f(z) -{ 5 }-> plus(x, y') :|: z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 f(z) -{ 4 }-> plus(x, 0) :|: z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 4 }-> plus(0, y) :|: z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 f(z) -{ 3 }-> plus(0, 0) :|: z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' f(z) -{ 2 }-> p(h(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + (1 + 0) + (1 + 0))) :|: z = 1 + (1 + 0) f(z) -{ 1 }-> 0 :|: z = 0 f(z) -{ 1 }-> 1 + 0 :|: z = 1 + 0 g(z) -{ 2 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 6 }-> 1 + plus(x, y') + 0 :|: z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 7 }-> 1 + plus(x, y'') + x' :|: z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x'' + y'', x'' >= 0, y'' >= 0 g(z) -{ 6 }-> 1 + plus(x, 0) + x' :|: z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 g(z) -{ 5 }-> 1 + plus(x, 0) + 0 :|: z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 5 }-> 1 + plus(0, y) + 0 :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 g(z) -{ 6 }-> 1 + plus(0, y') + x :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 5 }-> 1 + plus(0, 0) + x :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 4 }-> 1 + plus(0, 0) + 0 :|: z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', v0'' >= 0, 1 + (1 + 0) + (1 + 0) = v0'' g(z) -{ 1 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 4 }-> 1 + plus(x3, y') + x :|: y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 3 }-> 1 + plus(x3, y') + 0 :|: y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 3 }-> 1 + plus(x3, 0) + x :|: y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 2 }-> 1 + plus(x3, 0) + 0 :|: y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 3 }-> 1 + plus(0, y'') + x :|: z = 1 + x4 + y'', x4 >= 0, y'' >= 0, 1 + x4 + y'' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 2 }-> 1 + plus(0, y'') + 0 :|: z = 1 + x4 + y'', x4 >= 0, y'' >= 0, v0 >= 0, 1 + x4 + y'' = v0 h(z) -{ 2 }-> 1 + plus(0, 0) + x' :|: z >= 0, z = 1 + x' + y, x' >= 0, y >= 0 h(z) -{ 1 }-> 1 + plus(0, 0) + 0 :|: z >= 0 p(z) -{ 1 }-> x :|: z = 1 + x + y, x >= 0, y >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 1 }-> 1 + plus(z, z' - 1) :|: z >= 0, z' - 1 >= 0 q(z) -{ 1 }-> y :|: z = 1 + x + y, x >= 0, y >= 0 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {q}, {p}, {h}, {g}, {f} Previous analysis results are: plus: runtime: O(n^1) [1 + z'], size: O(n^1) [z + z'] ---------------------------------------- (239) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (240) Obligation: Complexity RNTS consisting of the following rules: f(z) -{ 5 + y }-> s10 :|: s10 >= 0, s10 <= 0 + y, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 f(z) -{ 5 }-> s7 :|: s7 >= 0, s7 <= x + 0, z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 f(z) -{ 6 + y' }-> s8 :|: s8 >= 0, s8 <= x + y', z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 f(z) -{ 4 }-> s9 :|: s9 >= 0, s9 <= 0 + 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + (1 + 0) + (1 + 0))) :|: z = 1 + (1 + 0) f(z) -{ 1 }-> 0 :|: z = 0 f(z) -{ 1 }-> 1 + 0 :|: z = 1 + 0 g(z) -{ 2 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 7 }-> 1 + s11 + x' :|: s11 >= 0, s11 <= x + 0, z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 g(z) -{ 8 + y'' }-> 1 + s12 + x' :|: s12 >= 0, s12 <= x + y'', z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x'' + y'', x'' >= 0, y'' >= 0 g(z) -{ 6 }-> 1 + s13 + 0 :|: s13 >= 0, s13 <= x + 0, z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 7 + y' }-> 1 + s14 + 0 :|: s14 >= 0, s14 <= x + y', z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 6 }-> 1 + s15 + x :|: s15 >= 0, s15 <= 0 + 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 7 + y' }-> 1 + s16 + x :|: s16 >= 0, s16 <= 0 + y', z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 5 }-> 1 + s17 + 0 :|: s17 >= 0, s17 <= 0 + 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', v0'' >= 0, 1 + (1 + 0) + (1 + 0) = v0'' g(z) -{ 6 + y }-> 1 + s18 + 0 :|: s18 >= 0, s18 <= 0 + y, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 1 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 5 + y' }-> 1 + s' + x :|: s' >= 0, s' <= x3 + y', y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 4 + y' }-> 1 + s'' + 0 :|: s'' >= 0, s'' <= x3 + y', y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 4 }-> 1 + s1 + x :|: s1 >= 0, s1 <= x3 + 0, y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 3 }-> 1 + s2 + 0 :|: s2 >= 0, s2 <= x3 + 0, y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 4 + y'' }-> 1 + s3 + x :|: s3 >= 0, s3 <= 0 + y'', z = 1 + x4 + y'', x4 >= 0, y'' >= 0, 1 + x4 + y'' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 3 + y'' }-> 1 + s4 + 0 :|: s4 >= 0, s4 <= 0 + y'', z = 1 + x4 + y'', x4 >= 0, y'' >= 0, v0 >= 0, 1 + x4 + y'' = v0 h(z) -{ 3 }-> 1 + s5 + x' :|: s5 >= 0, s5 <= 0 + 0, z >= 0, z = 1 + x' + y, x' >= 0, y >= 0 h(z) -{ 2 }-> 1 + s6 + 0 :|: s6 >= 0, s6 <= 0 + 0, z >= 0 p(z) -{ 1 }-> x :|: z = 1 + x + y, x >= 0, y >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 1 + z' }-> 1 + s :|: s >= 0, s <= z + (z' - 1), z >= 0, z' - 1 >= 0 q(z) -{ 1 }-> y :|: z = 1 + x + y, x >= 0, y >= 0 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {q}, {p}, {h}, {g}, {f} Previous analysis results are: plus: runtime: O(n^1) [1 + z'], size: O(n^1) [z + z'] ---------------------------------------- (241) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using KoAT for: q after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: z ---------------------------------------- (242) Obligation: Complexity RNTS consisting of the following rules: f(z) -{ 5 + y }-> s10 :|: s10 >= 0, s10 <= 0 + y, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 f(z) -{ 5 }-> s7 :|: s7 >= 0, s7 <= x + 0, z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 f(z) -{ 6 + y' }-> s8 :|: s8 >= 0, s8 <= x + y', z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 f(z) -{ 4 }-> s9 :|: s9 >= 0, s9 <= 0 + 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + (1 + 0) + (1 + 0))) :|: z = 1 + (1 + 0) f(z) -{ 1 }-> 0 :|: z = 0 f(z) -{ 1 }-> 1 + 0 :|: z = 1 + 0 g(z) -{ 2 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 7 }-> 1 + s11 + x' :|: s11 >= 0, s11 <= x + 0, z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 g(z) -{ 8 + y'' }-> 1 + s12 + x' :|: s12 >= 0, s12 <= x + y'', z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x'' + y'', x'' >= 0, y'' >= 0 g(z) -{ 6 }-> 1 + s13 + 0 :|: s13 >= 0, s13 <= x + 0, z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 7 + y' }-> 1 + s14 + 0 :|: s14 >= 0, s14 <= x + y', z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 6 }-> 1 + s15 + x :|: s15 >= 0, s15 <= 0 + 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 7 + y' }-> 1 + s16 + x :|: s16 >= 0, s16 <= 0 + y', z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 5 }-> 1 + s17 + 0 :|: s17 >= 0, s17 <= 0 + 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', v0'' >= 0, 1 + (1 + 0) + (1 + 0) = v0'' g(z) -{ 6 + y }-> 1 + s18 + 0 :|: s18 >= 0, s18 <= 0 + y, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 1 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 5 + y' }-> 1 + s' + x :|: s' >= 0, s' <= x3 + y', y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 4 + y' }-> 1 + s'' + 0 :|: s'' >= 0, s'' <= x3 + y', y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 4 }-> 1 + s1 + x :|: s1 >= 0, s1 <= x3 + 0, y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 3 }-> 1 + s2 + 0 :|: s2 >= 0, s2 <= x3 + 0, y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 4 + y'' }-> 1 + s3 + x :|: s3 >= 0, s3 <= 0 + y'', z = 1 + x4 + y'', x4 >= 0, y'' >= 0, 1 + x4 + y'' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 3 + y'' }-> 1 + s4 + 0 :|: s4 >= 0, s4 <= 0 + y'', z = 1 + x4 + y'', x4 >= 0, y'' >= 0, v0 >= 0, 1 + x4 + y'' = v0 h(z) -{ 3 }-> 1 + s5 + x' :|: s5 >= 0, s5 <= 0 + 0, z >= 0, z = 1 + x' + y, x' >= 0, y >= 0 h(z) -{ 2 }-> 1 + s6 + 0 :|: s6 >= 0, s6 <= 0 + 0, z >= 0 p(z) -{ 1 }-> x :|: z = 1 + x + y, x >= 0, y >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 1 + z' }-> 1 + s :|: s >= 0, s <= z + (z' - 1), z >= 0, z' - 1 >= 0 q(z) -{ 1 }-> y :|: z = 1 + x + y, x >= 0, y >= 0 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {q}, {p}, {h}, {g}, {f} Previous analysis results are: plus: runtime: O(n^1) [1 + z'], size: O(n^1) [z + z'] q: runtime: ?, size: O(n^1) [z] ---------------------------------------- (243) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: q after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 1 ---------------------------------------- (244) Obligation: Complexity RNTS consisting of the following rules: f(z) -{ 5 + y }-> s10 :|: s10 >= 0, s10 <= 0 + y, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 f(z) -{ 5 }-> s7 :|: s7 >= 0, s7 <= x + 0, z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 f(z) -{ 6 + y' }-> s8 :|: s8 >= 0, s8 <= x + y', z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 f(z) -{ 4 }-> s9 :|: s9 >= 0, s9 <= 0 + 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + (1 + 0) + (1 + 0))) :|: z = 1 + (1 + 0) f(z) -{ 1 }-> 0 :|: z = 0 f(z) -{ 1 }-> 1 + 0 :|: z = 1 + 0 g(z) -{ 2 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 7 }-> 1 + s11 + x' :|: s11 >= 0, s11 <= x + 0, z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 g(z) -{ 8 + y'' }-> 1 + s12 + x' :|: s12 >= 0, s12 <= x + y'', z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x'' + y'', x'' >= 0, y'' >= 0 g(z) -{ 6 }-> 1 + s13 + 0 :|: s13 >= 0, s13 <= x + 0, z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 7 + y' }-> 1 + s14 + 0 :|: s14 >= 0, s14 <= x + y', z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 6 }-> 1 + s15 + x :|: s15 >= 0, s15 <= 0 + 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 7 + y' }-> 1 + s16 + x :|: s16 >= 0, s16 <= 0 + y', z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 5 }-> 1 + s17 + 0 :|: s17 >= 0, s17 <= 0 + 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', v0'' >= 0, 1 + (1 + 0) + (1 + 0) = v0'' g(z) -{ 6 + y }-> 1 + s18 + 0 :|: s18 >= 0, s18 <= 0 + y, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 1 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 5 + y' }-> 1 + s' + x :|: s' >= 0, s' <= x3 + y', y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 4 + y' }-> 1 + s'' + 0 :|: s'' >= 0, s'' <= x3 + y', y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 4 }-> 1 + s1 + x :|: s1 >= 0, s1 <= x3 + 0, y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 3 }-> 1 + s2 + 0 :|: s2 >= 0, s2 <= x3 + 0, y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 4 + y'' }-> 1 + s3 + x :|: s3 >= 0, s3 <= 0 + y'', z = 1 + x4 + y'', x4 >= 0, y'' >= 0, 1 + x4 + y'' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 3 + y'' }-> 1 + s4 + 0 :|: s4 >= 0, s4 <= 0 + y'', z = 1 + x4 + y'', x4 >= 0, y'' >= 0, v0 >= 0, 1 + x4 + y'' = v0 h(z) -{ 3 }-> 1 + s5 + x' :|: s5 >= 0, s5 <= 0 + 0, z >= 0, z = 1 + x' + y, x' >= 0, y >= 0 h(z) -{ 2 }-> 1 + s6 + 0 :|: s6 >= 0, s6 <= 0 + 0, z >= 0 p(z) -{ 1 }-> x :|: z = 1 + x + y, x >= 0, y >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 1 + z' }-> 1 + s :|: s >= 0, s <= z + (z' - 1), z >= 0, z' - 1 >= 0 q(z) -{ 1 }-> y :|: z = 1 + x + y, x >= 0, y >= 0 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {p}, {h}, {g}, {f} Previous analysis results are: plus: runtime: O(n^1) [1 + z'], size: O(n^1) [z + z'] q: runtime: O(1) [1], size: O(n^1) [z] ---------------------------------------- (245) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (246) Obligation: Complexity RNTS consisting of the following rules: f(z) -{ 5 + y }-> s10 :|: s10 >= 0, s10 <= 0 + y, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 f(z) -{ 5 }-> s7 :|: s7 >= 0, s7 <= x + 0, z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 f(z) -{ 6 + y' }-> s8 :|: s8 >= 0, s8 <= x + y', z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 f(z) -{ 4 }-> s9 :|: s9 >= 0, s9 <= 0 + 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + (1 + 0) + (1 + 0))) :|: z = 1 + (1 + 0) f(z) -{ 1 }-> 0 :|: z = 0 f(z) -{ 1 }-> 1 + 0 :|: z = 1 + 0 g(z) -{ 2 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 7 }-> 1 + s11 + x' :|: s11 >= 0, s11 <= x + 0, z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 g(z) -{ 8 + y'' }-> 1 + s12 + x' :|: s12 >= 0, s12 <= x + y'', z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x'' + y'', x'' >= 0, y'' >= 0 g(z) -{ 6 }-> 1 + s13 + 0 :|: s13 >= 0, s13 <= x + 0, z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 7 + y' }-> 1 + s14 + 0 :|: s14 >= 0, s14 <= x + y', z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 6 }-> 1 + s15 + x :|: s15 >= 0, s15 <= 0 + 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 7 + y' }-> 1 + s16 + x :|: s16 >= 0, s16 <= 0 + y', z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 5 }-> 1 + s17 + 0 :|: s17 >= 0, s17 <= 0 + 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', v0'' >= 0, 1 + (1 + 0) + (1 + 0) = v0'' g(z) -{ 6 + y }-> 1 + s18 + 0 :|: s18 >= 0, s18 <= 0 + y, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 1 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 5 + y' }-> 1 + s' + x :|: s' >= 0, s' <= x3 + y', y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 4 + y' }-> 1 + s'' + 0 :|: s'' >= 0, s'' <= x3 + y', y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 4 }-> 1 + s1 + x :|: s1 >= 0, s1 <= x3 + 0, y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 3 }-> 1 + s2 + 0 :|: s2 >= 0, s2 <= x3 + 0, y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 4 + y'' }-> 1 + s3 + x :|: s3 >= 0, s3 <= 0 + y'', z = 1 + x4 + y'', x4 >= 0, y'' >= 0, 1 + x4 + y'' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 3 + y'' }-> 1 + s4 + 0 :|: s4 >= 0, s4 <= 0 + y'', z = 1 + x4 + y'', x4 >= 0, y'' >= 0, v0 >= 0, 1 + x4 + y'' = v0 h(z) -{ 3 }-> 1 + s5 + x' :|: s5 >= 0, s5 <= 0 + 0, z >= 0, z = 1 + x' + y, x' >= 0, y >= 0 h(z) -{ 2 }-> 1 + s6 + 0 :|: s6 >= 0, s6 <= 0 + 0, z >= 0 p(z) -{ 1 }-> x :|: z = 1 + x + y, x >= 0, y >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 1 + z' }-> 1 + s :|: s >= 0, s <= z + (z' - 1), z >= 0, z' - 1 >= 0 q(z) -{ 1 }-> y :|: z = 1 + x + y, x >= 0, y >= 0 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {p}, {h}, {g}, {f} Previous analysis results are: plus: runtime: O(n^1) [1 + z'], size: O(n^1) [z + z'] q: runtime: O(1) [1], size: O(n^1) [z] ---------------------------------------- (247) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using KoAT for: p after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: z ---------------------------------------- (248) Obligation: Complexity RNTS consisting of the following rules: f(z) -{ 5 + y }-> s10 :|: s10 >= 0, s10 <= 0 + y, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 f(z) -{ 5 }-> s7 :|: s7 >= 0, s7 <= x + 0, z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 f(z) -{ 6 + y' }-> s8 :|: s8 >= 0, s8 <= x + y', z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 f(z) -{ 4 }-> s9 :|: s9 >= 0, s9 <= 0 + 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + (1 + 0) + (1 + 0))) :|: z = 1 + (1 + 0) f(z) -{ 1 }-> 0 :|: z = 0 f(z) -{ 1 }-> 1 + 0 :|: z = 1 + 0 g(z) -{ 2 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 7 }-> 1 + s11 + x' :|: s11 >= 0, s11 <= x + 0, z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 g(z) -{ 8 + y'' }-> 1 + s12 + x' :|: s12 >= 0, s12 <= x + y'', z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x'' + y'', x'' >= 0, y'' >= 0 g(z) -{ 6 }-> 1 + s13 + 0 :|: s13 >= 0, s13 <= x + 0, z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 7 + y' }-> 1 + s14 + 0 :|: s14 >= 0, s14 <= x + y', z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 6 }-> 1 + s15 + x :|: s15 >= 0, s15 <= 0 + 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 7 + y' }-> 1 + s16 + x :|: s16 >= 0, s16 <= 0 + y', z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 5 }-> 1 + s17 + 0 :|: s17 >= 0, s17 <= 0 + 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', v0'' >= 0, 1 + (1 + 0) + (1 + 0) = v0'' g(z) -{ 6 + y }-> 1 + s18 + 0 :|: s18 >= 0, s18 <= 0 + y, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 1 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 5 + y' }-> 1 + s' + x :|: s' >= 0, s' <= x3 + y', y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 4 + y' }-> 1 + s'' + 0 :|: s'' >= 0, s'' <= x3 + y', y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 4 }-> 1 + s1 + x :|: s1 >= 0, s1 <= x3 + 0, y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 3 }-> 1 + s2 + 0 :|: s2 >= 0, s2 <= x3 + 0, y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 4 + y'' }-> 1 + s3 + x :|: s3 >= 0, s3 <= 0 + y'', z = 1 + x4 + y'', x4 >= 0, y'' >= 0, 1 + x4 + y'' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 3 + y'' }-> 1 + s4 + 0 :|: s4 >= 0, s4 <= 0 + y'', z = 1 + x4 + y'', x4 >= 0, y'' >= 0, v0 >= 0, 1 + x4 + y'' = v0 h(z) -{ 3 }-> 1 + s5 + x' :|: s5 >= 0, s5 <= 0 + 0, z >= 0, z = 1 + x' + y, x' >= 0, y >= 0 h(z) -{ 2 }-> 1 + s6 + 0 :|: s6 >= 0, s6 <= 0 + 0, z >= 0 p(z) -{ 1 }-> x :|: z = 1 + x + y, x >= 0, y >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 1 + z' }-> 1 + s :|: s >= 0, s <= z + (z' - 1), z >= 0, z' - 1 >= 0 q(z) -{ 1 }-> y :|: z = 1 + x + y, x >= 0, y >= 0 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {p}, {h}, {g}, {f} Previous analysis results are: plus: runtime: O(n^1) [1 + z'], size: O(n^1) [z + z'] q: runtime: O(1) [1], size: O(n^1) [z] p: runtime: ?, size: O(n^1) [z] ---------------------------------------- (249) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: p after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 1 ---------------------------------------- (250) Obligation: Complexity RNTS consisting of the following rules: f(z) -{ 5 + y }-> s10 :|: s10 >= 0, s10 <= 0 + y, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 f(z) -{ 5 }-> s7 :|: s7 >= 0, s7 <= x + 0, z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 f(z) -{ 6 + y' }-> s8 :|: s8 >= 0, s8 <= x + y', z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 f(z) -{ 4 }-> s9 :|: s9 >= 0, s9 <= 0 + 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + (1 + 0) + (1 + 0))) :|: z = 1 + (1 + 0) f(z) -{ 1 }-> 0 :|: z = 0 f(z) -{ 1 }-> 1 + 0 :|: z = 1 + 0 g(z) -{ 2 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 7 }-> 1 + s11 + x' :|: s11 >= 0, s11 <= x + 0, z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 g(z) -{ 8 + y'' }-> 1 + s12 + x' :|: s12 >= 0, s12 <= x + y'', z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x'' + y'', x'' >= 0, y'' >= 0 g(z) -{ 6 }-> 1 + s13 + 0 :|: s13 >= 0, s13 <= x + 0, z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 7 + y' }-> 1 + s14 + 0 :|: s14 >= 0, s14 <= x + y', z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 6 }-> 1 + s15 + x :|: s15 >= 0, s15 <= 0 + 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 7 + y' }-> 1 + s16 + x :|: s16 >= 0, s16 <= 0 + y', z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 5 }-> 1 + s17 + 0 :|: s17 >= 0, s17 <= 0 + 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', v0'' >= 0, 1 + (1 + 0) + (1 + 0) = v0'' g(z) -{ 6 + y }-> 1 + s18 + 0 :|: s18 >= 0, s18 <= 0 + y, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 1 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 5 + y' }-> 1 + s' + x :|: s' >= 0, s' <= x3 + y', y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 4 + y' }-> 1 + s'' + 0 :|: s'' >= 0, s'' <= x3 + y', y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 4 }-> 1 + s1 + x :|: s1 >= 0, s1 <= x3 + 0, y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 3 }-> 1 + s2 + 0 :|: s2 >= 0, s2 <= x3 + 0, y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 4 + y'' }-> 1 + s3 + x :|: s3 >= 0, s3 <= 0 + y'', z = 1 + x4 + y'', x4 >= 0, y'' >= 0, 1 + x4 + y'' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 3 + y'' }-> 1 + s4 + 0 :|: s4 >= 0, s4 <= 0 + y'', z = 1 + x4 + y'', x4 >= 0, y'' >= 0, v0 >= 0, 1 + x4 + y'' = v0 h(z) -{ 3 }-> 1 + s5 + x' :|: s5 >= 0, s5 <= 0 + 0, z >= 0, z = 1 + x' + y, x' >= 0, y >= 0 h(z) -{ 2 }-> 1 + s6 + 0 :|: s6 >= 0, s6 <= 0 + 0, z >= 0 p(z) -{ 1 }-> x :|: z = 1 + x + y, x >= 0, y >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 1 + z' }-> 1 + s :|: s >= 0, s <= z + (z' - 1), z >= 0, z' - 1 >= 0 q(z) -{ 1 }-> y :|: z = 1 + x + y, x >= 0, y >= 0 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {h}, {g}, {f} Previous analysis results are: plus: runtime: O(n^1) [1 + z'], size: O(n^1) [z + z'] q: runtime: O(1) [1], size: O(n^1) [z] p: runtime: O(1) [1], size: O(n^1) [z] ---------------------------------------- (251) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (252) Obligation: Complexity RNTS consisting of the following rules: f(z) -{ 5 + y }-> s10 :|: s10 >= 0, s10 <= 0 + y, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 f(z) -{ 5 }-> s7 :|: s7 >= 0, s7 <= x + 0, z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 f(z) -{ 6 + y' }-> s8 :|: s8 >= 0, s8 <= x + y', z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 f(z) -{ 4 }-> s9 :|: s9 >= 0, s9 <= 0 + 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + (1 + 0) + (1 + 0))) :|: z = 1 + (1 + 0) f(z) -{ 1 }-> 0 :|: z = 0 f(z) -{ 1 }-> 1 + 0 :|: z = 1 + 0 g(z) -{ 2 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 7 }-> 1 + s11 + x' :|: s11 >= 0, s11 <= x + 0, z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 g(z) -{ 8 + y'' }-> 1 + s12 + x' :|: s12 >= 0, s12 <= x + y'', z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x'' + y'', x'' >= 0, y'' >= 0 g(z) -{ 6 }-> 1 + s13 + 0 :|: s13 >= 0, s13 <= x + 0, z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 7 + y' }-> 1 + s14 + 0 :|: s14 >= 0, s14 <= x + y', z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 6 }-> 1 + s15 + x :|: s15 >= 0, s15 <= 0 + 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 7 + y' }-> 1 + s16 + x :|: s16 >= 0, s16 <= 0 + y', z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 5 }-> 1 + s17 + 0 :|: s17 >= 0, s17 <= 0 + 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', v0'' >= 0, 1 + (1 + 0) + (1 + 0) = v0'' g(z) -{ 6 + y }-> 1 + s18 + 0 :|: s18 >= 0, s18 <= 0 + y, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 1 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 5 + y' }-> 1 + s' + x :|: s' >= 0, s' <= x3 + y', y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 4 + y' }-> 1 + s'' + 0 :|: s'' >= 0, s'' <= x3 + y', y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 4 }-> 1 + s1 + x :|: s1 >= 0, s1 <= x3 + 0, y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 3 }-> 1 + s2 + 0 :|: s2 >= 0, s2 <= x3 + 0, y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 4 + y'' }-> 1 + s3 + x :|: s3 >= 0, s3 <= 0 + y'', z = 1 + x4 + y'', x4 >= 0, y'' >= 0, 1 + x4 + y'' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 3 + y'' }-> 1 + s4 + 0 :|: s4 >= 0, s4 <= 0 + y'', z = 1 + x4 + y'', x4 >= 0, y'' >= 0, v0 >= 0, 1 + x4 + y'' = v0 h(z) -{ 3 }-> 1 + s5 + x' :|: s5 >= 0, s5 <= 0 + 0, z >= 0, z = 1 + x' + y, x' >= 0, y >= 0 h(z) -{ 2 }-> 1 + s6 + 0 :|: s6 >= 0, s6 <= 0 + 0, z >= 0 p(z) -{ 1 }-> x :|: z = 1 + x + y, x >= 0, y >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 1 + z' }-> 1 + s :|: s >= 0, s <= z + (z' - 1), z >= 0, z' - 1 >= 0 q(z) -{ 1 }-> y :|: z = 1 + x + y, x >= 0, y >= 0 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {h}, {g}, {f} Previous analysis results are: plus: runtime: O(n^1) [1 + z'], size: O(n^1) [z + z'] q: runtime: O(1) [1], size: O(n^1) [z] p: runtime: O(1) [1], size: O(n^1) [z] ---------------------------------------- (253) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: h after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 1 + 2*z ---------------------------------------- (254) Obligation: Complexity RNTS consisting of the following rules: f(z) -{ 5 + y }-> s10 :|: s10 >= 0, s10 <= 0 + y, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 f(z) -{ 5 }-> s7 :|: s7 >= 0, s7 <= x + 0, z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 f(z) -{ 6 + y' }-> s8 :|: s8 >= 0, s8 <= x + y', z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 f(z) -{ 4 }-> s9 :|: s9 >= 0, s9 <= 0 + 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + (1 + 0) + (1 + 0))) :|: z = 1 + (1 + 0) f(z) -{ 1 }-> 0 :|: z = 0 f(z) -{ 1 }-> 1 + 0 :|: z = 1 + 0 g(z) -{ 2 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 7 }-> 1 + s11 + x' :|: s11 >= 0, s11 <= x + 0, z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 g(z) -{ 8 + y'' }-> 1 + s12 + x' :|: s12 >= 0, s12 <= x + y'', z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x'' + y'', x'' >= 0, y'' >= 0 g(z) -{ 6 }-> 1 + s13 + 0 :|: s13 >= 0, s13 <= x + 0, z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 7 + y' }-> 1 + s14 + 0 :|: s14 >= 0, s14 <= x + y', z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 6 }-> 1 + s15 + x :|: s15 >= 0, s15 <= 0 + 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 7 + y' }-> 1 + s16 + x :|: s16 >= 0, s16 <= 0 + y', z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 5 }-> 1 + s17 + 0 :|: s17 >= 0, s17 <= 0 + 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', v0'' >= 0, 1 + (1 + 0) + (1 + 0) = v0'' g(z) -{ 6 + y }-> 1 + s18 + 0 :|: s18 >= 0, s18 <= 0 + y, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 1 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 5 + y' }-> 1 + s' + x :|: s' >= 0, s' <= x3 + y', y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 4 + y' }-> 1 + s'' + 0 :|: s'' >= 0, s'' <= x3 + y', y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 4 }-> 1 + s1 + x :|: s1 >= 0, s1 <= x3 + 0, y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 3 }-> 1 + s2 + 0 :|: s2 >= 0, s2 <= x3 + 0, y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 4 + y'' }-> 1 + s3 + x :|: s3 >= 0, s3 <= 0 + y'', z = 1 + x4 + y'', x4 >= 0, y'' >= 0, 1 + x4 + y'' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 3 + y'' }-> 1 + s4 + 0 :|: s4 >= 0, s4 <= 0 + y'', z = 1 + x4 + y'', x4 >= 0, y'' >= 0, v0 >= 0, 1 + x4 + y'' = v0 h(z) -{ 3 }-> 1 + s5 + x' :|: s5 >= 0, s5 <= 0 + 0, z >= 0, z = 1 + x' + y, x' >= 0, y >= 0 h(z) -{ 2 }-> 1 + s6 + 0 :|: s6 >= 0, s6 <= 0 + 0, z >= 0 p(z) -{ 1 }-> x :|: z = 1 + x + y, x >= 0, y >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 1 + z' }-> 1 + s :|: s >= 0, s <= z + (z' - 1), z >= 0, z' - 1 >= 0 q(z) -{ 1 }-> y :|: z = 1 + x + y, x >= 0, y >= 0 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {h}, {g}, {f} Previous analysis results are: plus: runtime: O(n^1) [1 + z'], size: O(n^1) [z + z'] q: runtime: O(1) [1], size: O(n^1) [z] p: runtime: O(1) [1], size: O(n^1) [z] h: runtime: ?, size: O(n^1) [1 + 2*z] ---------------------------------------- (255) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: h after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 4 + z ---------------------------------------- (256) Obligation: Complexity RNTS consisting of the following rules: f(z) -{ 5 + y }-> s10 :|: s10 >= 0, s10 <= 0 + y, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 f(z) -{ 5 }-> s7 :|: s7 >= 0, s7 <= x + 0, z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 f(z) -{ 6 + y' }-> s8 :|: s8 >= 0, s8 <= x + y', z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 f(z) -{ 4 }-> s9 :|: s9 >= 0, s9 <= 0 + 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + (1 + 0) + (1 + 0))) :|: z = 1 + (1 + 0) f(z) -{ 1 }-> 0 :|: z = 0 f(z) -{ 1 }-> 1 + 0 :|: z = 1 + 0 g(z) -{ 2 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + (1 + 0) + (1 + 0)) :|: z = 1 + 0 g(z) -{ 7 }-> 1 + s11 + x' :|: s11 >= 0, s11 <= x + 0, z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 g(z) -{ 8 + y'' }-> 1 + s12 + x' :|: s12 >= 0, s12 <= x + y'', z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x'' + y'', x'' >= 0, y'' >= 0 g(z) -{ 6 }-> 1 + s13 + 0 :|: s13 >= 0, s13 <= x + 0, z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 7 + y' }-> 1 + s14 + 0 :|: s14 >= 0, s14 <= x + y', z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 6 }-> 1 + s15 + x :|: s15 >= 0, s15 <= 0 + 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 7 + y' }-> 1 + s16 + x :|: s16 >= 0, s16 <= 0 + y', z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 5 }-> 1 + s17 + 0 :|: s17 >= 0, s17 <= 0 + 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', v0'' >= 0, 1 + (1 + 0) + (1 + 0) = v0'' g(z) -{ 6 + y }-> 1 + s18 + 0 :|: s18 >= 0, s18 <= 0 + y, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 1 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 5 + y' }-> 1 + s' + x :|: s' >= 0, s' <= x3 + y', y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 4 + y' }-> 1 + s'' + 0 :|: s'' >= 0, s'' <= x3 + y', y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 4 }-> 1 + s1 + x :|: s1 >= 0, s1 <= x3 + 0, y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 3 }-> 1 + s2 + 0 :|: s2 >= 0, s2 <= x3 + 0, y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 4 + y'' }-> 1 + s3 + x :|: s3 >= 0, s3 <= 0 + y'', z = 1 + x4 + y'', x4 >= 0, y'' >= 0, 1 + x4 + y'' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 3 + y'' }-> 1 + s4 + 0 :|: s4 >= 0, s4 <= 0 + y'', z = 1 + x4 + y'', x4 >= 0, y'' >= 0, v0 >= 0, 1 + x4 + y'' = v0 h(z) -{ 3 }-> 1 + s5 + x' :|: s5 >= 0, s5 <= 0 + 0, z >= 0, z = 1 + x' + y, x' >= 0, y >= 0 h(z) -{ 2 }-> 1 + s6 + 0 :|: s6 >= 0, s6 <= 0 + 0, z >= 0 p(z) -{ 1 }-> x :|: z = 1 + x + y, x >= 0, y >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 1 + z' }-> 1 + s :|: s >= 0, s <= z + (z' - 1), z >= 0, z' - 1 >= 0 q(z) -{ 1 }-> y :|: z = 1 + x + y, x >= 0, y >= 0 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {g}, {f} Previous analysis results are: plus: runtime: O(n^1) [1 + z'], size: O(n^1) [z + z'] q: runtime: O(1) [1], size: O(n^1) [z] p: runtime: O(1) [1], size: O(n^1) [z] h: runtime: O(n^1) [4 + z], size: O(n^1) [1 + 2*z] ---------------------------------------- (257) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (258) Obligation: Complexity RNTS consisting of the following rules: f(z) -{ 5 + y }-> s10 :|: s10 >= 0, s10 <= 0 + y, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 f(z) -{ 10 }-> s21 :|: s20 >= 0, s20 <= 1 + 2 * (1 + (1 + 0) + (1 + 0)), s21 >= 0, s21 <= s20, z = 1 + (1 + 0) f(z) -{ 5 }-> s7 :|: s7 >= 0, s7 <= x + 0, z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 f(z) -{ 6 + y' }-> s8 :|: s8 >= 0, s8 <= x + y', z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 f(z) -{ 4 }-> s9 :|: s9 >= 0, s9 <= 0 + 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 1 }-> 0 :|: z = 0 f(z) -{ 1 }-> 1 + 0 :|: z = 1 + 0 g(z) -{ 9 }-> s19 :|: s19 >= 0, s19 <= 1 + 2 * (1 + (1 + 0) + (1 + 0)), z = 1 + 0 g(z) -{ 2 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 7 }-> 1 + s11 + x' :|: s11 >= 0, s11 <= x + 0, z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 g(z) -{ 8 + y'' }-> 1 + s12 + x' :|: s12 >= 0, s12 <= x + y'', z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x'' + y'', x'' >= 0, y'' >= 0 g(z) -{ 6 }-> 1 + s13 + 0 :|: s13 >= 0, s13 <= x + 0, z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 7 + y' }-> 1 + s14 + 0 :|: s14 >= 0, s14 <= x + y', z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 6 }-> 1 + s15 + x :|: s15 >= 0, s15 <= 0 + 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 7 + y' }-> 1 + s16 + x :|: s16 >= 0, s16 <= 0 + y', z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 5 }-> 1 + s17 + 0 :|: s17 >= 0, s17 <= 0 + 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', v0'' >= 0, 1 + (1 + 0) + (1 + 0) = v0'' g(z) -{ 6 + y }-> 1 + s18 + 0 :|: s18 >= 0, s18 <= 0 + y, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 1 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 5 + y' }-> 1 + s' + x :|: s' >= 0, s' <= x3 + y', y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 4 + y' }-> 1 + s'' + 0 :|: s'' >= 0, s'' <= x3 + y', y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 4 }-> 1 + s1 + x :|: s1 >= 0, s1 <= x3 + 0, y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 3 }-> 1 + s2 + 0 :|: s2 >= 0, s2 <= x3 + 0, y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 4 + y'' }-> 1 + s3 + x :|: s3 >= 0, s3 <= 0 + y'', z = 1 + x4 + y'', x4 >= 0, y'' >= 0, 1 + x4 + y'' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 3 + y'' }-> 1 + s4 + 0 :|: s4 >= 0, s4 <= 0 + y'', z = 1 + x4 + y'', x4 >= 0, y'' >= 0, v0 >= 0, 1 + x4 + y'' = v0 h(z) -{ 3 }-> 1 + s5 + x' :|: s5 >= 0, s5 <= 0 + 0, z >= 0, z = 1 + x' + y, x' >= 0, y >= 0 h(z) -{ 2 }-> 1 + s6 + 0 :|: s6 >= 0, s6 <= 0 + 0, z >= 0 p(z) -{ 1 }-> x :|: z = 1 + x + y, x >= 0, y >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 1 + z' }-> 1 + s :|: s >= 0, s <= z + (z' - 1), z >= 0, z' - 1 >= 0 q(z) -{ 1 }-> y :|: z = 1 + x + y, x >= 0, y >= 0 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {g}, {f} Previous analysis results are: plus: runtime: O(n^1) [1 + z'], size: O(n^1) [z + z'] q: runtime: O(1) [1], size: O(n^1) [z] p: runtime: O(1) [1], size: O(n^1) [z] h: runtime: O(n^1) [4 + z], size: O(n^1) [1 + 2*z] ---------------------------------------- (259) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using KoAT for: g after applying outer abstraction to obtain an ITS, resulting in: EXP with polynomial bound: ? ---------------------------------------- (260) Obligation: Complexity RNTS consisting of the following rules: f(z) -{ 5 + y }-> s10 :|: s10 >= 0, s10 <= 0 + y, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 f(z) -{ 10 }-> s21 :|: s20 >= 0, s20 <= 1 + 2 * (1 + (1 + 0) + (1 + 0)), s21 >= 0, s21 <= s20, z = 1 + (1 + 0) f(z) -{ 5 }-> s7 :|: s7 >= 0, s7 <= x + 0, z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 f(z) -{ 6 + y' }-> s8 :|: s8 >= 0, s8 <= x + y', z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 f(z) -{ 4 }-> s9 :|: s9 >= 0, s9 <= 0 + 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 1 }-> 0 :|: z = 0 f(z) -{ 1 }-> 1 + 0 :|: z = 1 + 0 g(z) -{ 9 }-> s19 :|: s19 >= 0, s19 <= 1 + 2 * (1 + (1 + 0) + (1 + 0)), z = 1 + 0 g(z) -{ 2 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 7 }-> 1 + s11 + x' :|: s11 >= 0, s11 <= x + 0, z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 g(z) -{ 8 + y'' }-> 1 + s12 + x' :|: s12 >= 0, s12 <= x + y'', z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x'' + y'', x'' >= 0, y'' >= 0 g(z) -{ 6 }-> 1 + s13 + 0 :|: s13 >= 0, s13 <= x + 0, z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 7 + y' }-> 1 + s14 + 0 :|: s14 >= 0, s14 <= x + y', z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 6 }-> 1 + s15 + x :|: s15 >= 0, s15 <= 0 + 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 7 + y' }-> 1 + s16 + x :|: s16 >= 0, s16 <= 0 + y', z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 5 }-> 1 + s17 + 0 :|: s17 >= 0, s17 <= 0 + 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', v0'' >= 0, 1 + (1 + 0) + (1 + 0) = v0'' g(z) -{ 6 + y }-> 1 + s18 + 0 :|: s18 >= 0, s18 <= 0 + y, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 1 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 5 + y' }-> 1 + s' + x :|: s' >= 0, s' <= x3 + y', y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 4 + y' }-> 1 + s'' + 0 :|: s'' >= 0, s'' <= x3 + y', y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 4 }-> 1 + s1 + x :|: s1 >= 0, s1 <= x3 + 0, y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 3 }-> 1 + s2 + 0 :|: s2 >= 0, s2 <= x3 + 0, y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 4 + y'' }-> 1 + s3 + x :|: s3 >= 0, s3 <= 0 + y'', z = 1 + x4 + y'', x4 >= 0, y'' >= 0, 1 + x4 + y'' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 3 + y'' }-> 1 + s4 + 0 :|: s4 >= 0, s4 <= 0 + y'', z = 1 + x4 + y'', x4 >= 0, y'' >= 0, v0 >= 0, 1 + x4 + y'' = v0 h(z) -{ 3 }-> 1 + s5 + x' :|: s5 >= 0, s5 <= 0 + 0, z >= 0, z = 1 + x' + y, x' >= 0, y >= 0 h(z) -{ 2 }-> 1 + s6 + 0 :|: s6 >= 0, s6 <= 0 + 0, z >= 0 p(z) -{ 1 }-> x :|: z = 1 + x + y, x >= 0, y >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 1 + z' }-> 1 + s :|: s >= 0, s <= z + (z' - 1), z >= 0, z' - 1 >= 0 q(z) -{ 1 }-> y :|: z = 1 + x + y, x >= 0, y >= 0 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {g}, {f} Previous analysis results are: plus: runtime: O(n^1) [1 + z'], size: O(n^1) [z + z'] q: runtime: O(1) [1], size: O(n^1) [z] p: runtime: O(1) [1], size: O(n^1) [z] h: runtime: O(n^1) [4 + z], size: O(n^1) [1 + 2*z] g: runtime: ?, size: EXP ---------------------------------------- (261) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: g after applying outer abstraction to obtain an ITS, resulting in: INF with polynomial bound: ? ---------------------------------------- (262) Obligation: Complexity RNTS consisting of the following rules: f(z) -{ 5 + y }-> s10 :|: s10 >= 0, s10 <= 0 + y, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 f(z) -{ 10 }-> s21 :|: s20 >= 0, s20 <= 1 + 2 * (1 + (1 + 0) + (1 + 0)), s21 >= 0, s21 <= s20, z = 1 + (1 + 0) f(z) -{ 5 }-> s7 :|: s7 >= 0, s7 <= x + 0, z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 f(z) -{ 6 + y' }-> s8 :|: s8 >= 0, s8 <= x + y', z = 1 + (1 + 0), 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 f(z) -{ 4 }-> s9 :|: s9 >= 0, s9 <= 0 + 0, z = 1 + (1 + 0), v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(h(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 3 }-> plus(p(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3))), q(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(h(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 2 }-> p(h(1 + plus(p(g(z - 3)), q(g(z - 3))) + p(g(z - 3)))) :|: z - 3 >= 0 f(z) -{ 1 }-> 0 :|: z = 0 f(z) -{ 1 }-> 1 + 0 :|: z = 1 + 0 g(z) -{ 9 }-> s19 :|: s19 >= 0, s19 <= 1 + 2 * (1 + (1 + 0) + (1 + 0)), z = 1 + 0 g(z) -{ 2 }-> h(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 2 }-> h(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 7 }-> 1 + s11 + x' :|: s11 >= 0, s11 <= x + 0, z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0 g(z) -{ 8 + y'' }-> 1 + s12 + x' :|: s12 >= 0, s12 <= x + y'', z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x'' + y'', x'' >= 0, y'' >= 0 g(z) -{ 6 }-> 1 + s13 + 0 :|: s13 >= 0, s13 <= x + 0, z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 7 + y' }-> 1 + s14 + 0 :|: s14 >= 0, s14 <= x + y', z = 1 + 0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 6 }-> 1 + s15 + x :|: s15 >= 0, s15 <= 0 + 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0' g(z) -{ 7 + y' }-> 1 + s16 + x :|: s16 >= 0, s16 <= 0 + y', z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0, 1 + (1 + 0) + (1 + 0) = 1 + x' + y', x' >= 0, y' >= 0 g(z) -{ 5 }-> 1 + s17 + 0 :|: s17 >= 0, s17 <= 0 + 0, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', v0'' >= 0, 1 + (1 + 0) + (1 + 0) = v0'' g(z) -{ 6 + y }-> 1 + s18 + 0 :|: s18 >= 0, s18 <= 0 + y, z = 1 + 0, v0 >= 0, 1 + (1 + 0) + (1 + 0) = v0, v0' >= 0, 1 + (1 + 0) + (1 + 0) = v0', 1 + (1 + 0) + (1 + 0) = 1 + x + y, x >= 0, y >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(h(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(h(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(h(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 4 }-> 1 + plus(p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))), q(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2)))) + p(1 + plus(p(g(z - 2)), q(g(z - 2))) + p(g(z - 2))) :|: z - 2 >= 0 g(z) -{ 1 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 5 + y' }-> 1 + s' + x :|: s' >= 0, s' <= x3 + y', y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 4 + y' }-> 1 + s'' + 0 :|: s'' >= 0, s'' <= x3 + y', y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 4 }-> 1 + s1 + x :|: s1 >= 0, s1 <= x3 + 0, y' >= 0, z = 1 + x3 + y', x3 >= 0, 1 + x3 + y' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 3 }-> 1 + s2 + 0 :|: s2 >= 0, s2 <= x3 + 0, y' >= 0, z = 1 + x3 + y', x3 >= 0, v0 >= 0, 1 + x3 + y' = v0 h(z) -{ 4 + y'' }-> 1 + s3 + x :|: s3 >= 0, s3 <= 0 + y'', z = 1 + x4 + y'', x4 >= 0, y'' >= 0, 1 + x4 + y'' = 1 + x + y, x >= 0, y >= 0 h(z) -{ 3 + y'' }-> 1 + s4 + 0 :|: s4 >= 0, s4 <= 0 + y'', z = 1 + x4 + y'', x4 >= 0, y'' >= 0, v0 >= 0, 1 + x4 + y'' = v0 h(z) -{ 3 }-> 1 + s5 + x' :|: s5 >= 0, s5 <= 0 + 0, z >= 0, z = 1 + x' + y, x' >= 0, y >= 0 h(z) -{ 2 }-> 1 + s6 + 0 :|: s6 >= 0, s6 <= 0 + 0, z >= 0 p(z) -{ 1 }-> x :|: z = 1 + x + y, x >= 0, y >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 plus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 plus(z, z') -{ 1 + z' }-> 1 + s :|: s >= 0, s <= z + (z' - 1), z >= 0, z' - 1 >= 0 q(z) -{ 1 }-> y :|: z = 1 + x + y, x >= 0, y >= 0 q(z) -{ 0 }-> 0 :|: z >= 0 Function symbols to be analyzed: {g}, {f} Previous analysis results are: plus: runtime: O(n^1) [1 + z'], size: O(n^1) [z + z'] q: runtime: O(1) [1], size: O(n^1) [z] p: runtime: O(1) [1], size: O(n^1) [z] h: runtime: O(n^1) [4 + z], size: O(n^1) [1 + 2*z] g: runtime: INF, size: EXP ---------------------------------------- (263) 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: p(v0) -> null_p [0] q(v0) -> null_q [0] f(v0) -> null_f [0] g(v0) -> null_g [0] plus(v0, v1) -> null_plus [0] And the following fresh constants: null_p, null_q, null_f, null_g, null_plus ---------------------------------------- (264) 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: f(0) -> 0 [1] f(s(0)) -> s(0) [1] f(s(s(x))) -> p(h(g(x))) [1] g(0) -> pair(s(0), s(0)) [1] g(s(x)) -> h(g(x)) [1] h(x) -> pair(plus(p(x), q(x)), p(x)) [1] p(pair(x, y)) -> x [1] q(pair(x, y)) -> y [1] plus(x, 0) -> x [1] plus(x, s(y)) -> s(plus(x, y)) [1] f(s(s(x))) -> plus(p(g(x)), q(g(x))) [1] g(s(x)) -> pair(plus(p(g(x)), q(g(x))), p(g(x))) [1] p(v0) -> null_p [0] q(v0) -> null_q [0] f(v0) -> null_f [0] g(v0) -> null_g [0] plus(v0, v1) -> null_plus [0] The TRS has the following type information: f :: 0:s:null_p:null_q:null_f:null_plus -> 0:s:null_p:null_q:null_f:null_plus 0 :: 0:s:null_p:null_q:null_f:null_plus s :: 0:s:null_p:null_q:null_f:null_plus -> 0:s:null_p:null_q:null_f:null_plus p :: pair:null_g -> 0:s:null_p:null_q:null_f:null_plus h :: pair:null_g -> pair:null_g g :: 0:s:null_p:null_q:null_f:null_plus -> pair:null_g pair :: 0:s:null_p:null_q:null_f:null_plus -> 0:s:null_p:null_q:null_f:null_plus -> pair:null_g plus :: 0:s:null_p:null_q:null_f:null_plus -> 0:s:null_p:null_q:null_f:null_plus -> 0:s:null_p:null_q:null_f:null_plus q :: pair:null_g -> 0:s:null_p:null_q:null_f:null_plus null_p :: 0:s:null_p:null_q:null_f:null_plus null_q :: 0:s:null_p:null_q:null_f:null_plus null_f :: 0:s:null_p:null_q:null_f:null_plus null_g :: pair:null_g null_plus :: 0:s:null_p:null_q:null_f:null_plus Rewrite Strategy: INNERMOST ---------------------------------------- (265) 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 null_p => 0 null_q => 0 null_f => 0 null_g => 0 null_plus => 0 ---------------------------------------- (266) Obligation: Complexity RNTS consisting of the following rules: f(z) -{ 1 }-> plus(p(g(x)), q(g(x))) :|: x >= 0, z = 1 + (1 + x) f(z) -{ 1 }-> p(h(g(x))) :|: x >= 0, z = 1 + (1 + x) f(z) -{ 1 }-> 0 :|: z = 0 f(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 f(z) -{ 1 }-> 1 + 0 :|: z = 1 + 0 g(z) -{ 1 }-> h(g(x)) :|: x >= 0, z = 1 + x g(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 g(z) -{ 1 }-> 1 + plus(p(g(x)), q(g(x))) + p(g(x)) :|: x >= 0, z = 1 + x g(z) -{ 1 }-> 1 + (1 + 0) + (1 + 0) :|: z = 0 h(z) -{ 1 }-> 1 + plus(p(x), q(x)) + p(x) :|: x >= 0, z = x p(z) -{ 1 }-> x :|: z = 1 + x + y, x >= 0, y >= 0 p(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 plus(z, z') -{ 1 }-> x :|: x >= 0, z = x, z' = 0 plus(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 plus(z, z') -{ 1 }-> 1 + plus(x, y) :|: z' = 1 + y, x >= 0, y >= 0, z = x q(z) -{ 1 }-> y :|: z = 1 + x + y, x >= 0, y >= 0 q(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 Only complete derivations are relevant for the runtime complexity.