KILLED proof of input_xuXsq9puc3.trs # AProVE Commit ID: aff8ecad908e01718a4c36e68d2e55d5e0f16e15 fuhs 20220216 unpublished The Runtime Complexity (parallel-innermost) of the given CpxTRS could be proven to be BOUNDS(1, INF). (0) CpxTRS (1) RenamingProof [BOTH BOUNDS(ID, ID), 0 ms] (2) CpxTRS (3) RelTrsToTrsProof [UPPER BOUND(ID), 0 ms] (4) CpxTRS (5) CpxTrsToCdtProof [UPPER BOUND(ID), 0 ms] (6) CdtProblem (7) CdtToCpxRelTrsProof [BOTH BOUNDS(ID, ID), 0 ms] (8) CpxRelTRS (9) RenamingProof [BOTH BOUNDS(ID, ID), 0 ms] (10) CpxRelTRS (11) TypeInferenceProof [BOTH BOUNDS(ID, ID), 0 ms] (12) typed CpxTrs (13) OrderProof [LOWER BOUND(ID), 11 ms] (14) typed CpxTrs (15) RewriteLemmaProof [LOWER BOUND(ID), 333 ms] (16) BEST (17) proven lower bound (18) LowerBoundPropagationProof [FINISHED, 0 ms] (19) BOUNDS(n^1, INF) (20) typed CpxTrs (21) RewriteLemmaProof [LOWER BOUND(ID), 55 ms] (22) typed CpxTrs (23) RewriteLemmaProof [LOWER BOUND(ID), 21 ms] (24) typed CpxTrs (25) RewriteLemmaProof [LOWER BOUND(ID), 100 ms] (26) typed CpxTrs (27) RewriteLemmaProof [LOWER BOUND(ID), 82 ms] (28) typed CpxTrs (29) RewriteLemmaProof [LOWER BOUND(ID), 56 ms] (30) typed CpxTrs (31) RewriteLemmaProof [LOWER BOUND(ID), 7 ms] (32) typed CpxTrs (33) RewriteLemmaProof [LOWER BOUND(ID), 7 ms] (34) typed CpxTrs (35) RelTrsToWeightedTrsProof [UPPER BOUND(ID), 0 ms] (36) CpxWeightedTrs (37) CpxWeightedTrsRenamingProof [BOTH BOUNDS(ID, ID), 0 ms] (38) CpxWeightedTrs (39) TypeInferenceProof [BOTH BOUNDS(ID, ID), 0 ms] (40) CpxTypedWeightedTrs (41) CompletionProof [UPPER BOUND(ID), 0 ms] (42) CpxTypedWeightedCompleteTrs (43) NarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (44) CpxTypedWeightedCompleteTrs (45) CpxTypedWeightedTrsToRntsProof [UPPER BOUND(ID), 1 ms] (46) CpxRNTS (47) InliningProof [UPPER BOUND(ID), 0 ms] (48) CpxRNTS (49) SimplificationProof [BOTH BOUNDS(ID, ID), 0 ms] (50) CpxRNTS (51) CpxRntsAnalysisOrderProof [BOTH BOUNDS(ID, ID), 0 ms] (52) CpxRNTS (53) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (54) CpxRNTS (55) IntTrsBoundProof [UPPER BOUND(ID), 185 ms] (56) CpxRNTS (57) IntTrsBoundProof [UPPER BOUND(ID), 48 ms] (58) CpxRNTS (59) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (60) CpxRNTS (61) IntTrsBoundProof [UPPER BOUND(ID), 486 ms] (62) CpxRNTS (63) IntTrsBoundProof [UPPER BOUND(ID), 107 ms] (64) CpxRNTS (65) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (66) CpxRNTS (67) IntTrsBoundProof [UPPER BOUND(ID), 221 ms] (68) CpxRNTS (69) IntTrsBoundProof [UPPER BOUND(ID), 105 ms] (70) CpxRNTS (71) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (72) CpxRNTS (73) IntTrsBoundProof [UPPER BOUND(ID), 341 ms] (74) CpxRNTS (75) IntTrsBoundProof [UPPER BOUND(ID), 115 ms] (76) CpxRNTS (77) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (78) CpxRNTS (79) IntTrsBoundProof [UPPER BOUND(ID), 129 ms] (80) CpxRNTS (81) IntTrsBoundProof [UPPER BOUND(ID), 14 ms] (82) CpxRNTS (83) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (84) CpxRNTS (85) IntTrsBoundProof [UPPER BOUND(ID), 1037 ms] (86) CpxRNTS (87) IntTrsBoundProof [UPPER BOUND(ID), 638 ms] (88) CpxRNTS (89) CompletionProof [UPPER BOUND(ID), 0 ms] (90) CpxTypedWeightedCompleteTrs (91) CpxTypedWeightedTrsToRntsProof [UPPER BOUND(ID), 8 ms] (92) CpxRNTS (93) CpxTrsToCdtProof [UPPER BOUND(ID), 0 ms] (94) CdtProblem (95) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (96) CdtProblem (97) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (98) CdtProblem (99) CdtUsableRulesProof [BOTH BOUNDS(ID, ID), 0 ms] (100) CdtProblem (101) CdtToCpxRelTrsProof [BOTH BOUNDS(ID, ID), 0 ms] (102) CpxRelTRS (103) RelTrsToTrsProof [UPPER BOUND(ID), 0 ms] (104) CpxTRS (105) RelTrsToWeightedTrsProof [BOTH BOUNDS(ID, ID), 0 ms] (106) CpxWeightedTrs (107) CpxWeightedTrsRenamingProof [BOTH BOUNDS(ID, ID), 0 ms] (108) CpxWeightedTrs (109) TypeInferenceProof [BOTH BOUNDS(ID, ID), 0 ms] (110) CpxTypedWeightedTrs (111) CompletionProof [UPPER BOUND(ID), 0 ms] (112) CpxTypedWeightedCompleteTrs (113) NarrowingProof [BOTH BOUNDS(ID, ID), 24 ms] (114) CpxTypedWeightedCompleteTrs (115) CpxTypedWeightedTrsToRntsProof [UPPER BOUND(ID), 0 ms] (116) CpxRNTS (117) InliningProof [UPPER BOUND(ID), 0 ms] (118) CpxRNTS (119) SimplificationProof [BOTH BOUNDS(ID, ID), 0 ms] (120) CpxRNTS (121) CpxRntsAnalysisOrderProof [BOTH BOUNDS(ID, ID), 0 ms] (122) CpxRNTS (123) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (124) CpxRNTS (125) IntTrsBoundProof [UPPER BOUND(ID), 190 ms] (126) CpxRNTS (127) IntTrsBoundProof [UPPER BOUND(ID), 52 ms] (128) CpxRNTS (129) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (130) CpxRNTS (131) IntTrsBoundProof [UPPER BOUND(ID), 189 ms] (132) CpxRNTS (133) IntTrsBoundProof [UPPER BOUND(ID), 74 ms] (134) CpxRNTS (135) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (136) CpxRNTS (137) IntTrsBoundProof [UPPER BOUND(ID), 391 ms] (138) CpxRNTS (139) IntTrsBoundProof [UPPER BOUND(ID), 95 ms] (140) CpxRNTS (141) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (142) CpxRNTS (143) IntTrsBoundProof [UPPER BOUND(ID), 89 ms] (144) CpxRNTS (145) IntTrsBoundProof [UPPER BOUND(ID), 24 ms] (146) CpxRNTS (147) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (148) CpxRNTS (149) IntTrsBoundProof [UPPER BOUND(ID), 169 ms] (150) CpxRNTS (151) IntTrsBoundProof [UPPER BOUND(ID), 74 ms] (152) CpxRNTS (153) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (154) CpxRNTS (155) IntTrsBoundProof [UPPER BOUND(ID), 342 ms] (156) CpxRNTS (157) IntTrsBoundProof [UPPER BOUND(ID), 76 ms] (158) CpxRNTS (159) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (160) CpxRNTS (161) IntTrsBoundProof [UPPER BOUND(ID), 312 ms] (162) CpxRNTS (163) IntTrsBoundProof [UPPER BOUND(ID), 145 ms] (164) CpxRNTS (165) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (166) CpxRNTS (167) IntTrsBoundProof [UPPER BOUND(ID), 28 ms] (168) CpxRNTS (169) IntTrsBoundProof [UPPER BOUND(ID), 32 ms] (170) CpxRNTS (171) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (172) CpxRNTS (173) IntTrsBoundProof [UPPER BOUND(ID), 159 ms] (174) CpxRNTS (175) IntTrsBoundProof [UPPER BOUND(ID), 74 ms] (176) CpxRNTS (177) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (178) CpxRNTS (179) IntTrsBoundProof [UPPER BOUND(ID), 1511 ms] (180) CpxRNTS (181) IntTrsBoundProof [UPPER BOUND(ID), 821 ms] (182) CpxRNTS (183) CompletionProof [UPPER BOUND(ID), 0 ms] (184) CpxTypedWeightedCompleteTrs (185) CpxTypedWeightedTrsToRntsProof [UPPER BOUND(ID), 0 ms] (186) CpxRNTS (187) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (188) CdtProblem (189) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 5 ms] (190) CdtProblem (191) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 8 ms] (192) CdtProblem (193) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (194) CdtProblem (195) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (196) CdtProblem (197) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 9 ms] (198) CdtProblem (199) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (200) CdtProblem (201) CdtGraphSplitRhsProof [BOTH BOUNDS(ID, ID), 0 ms] (202) CdtProblem (203) CdtRuleRemovalProof [UPPER BOUND(ADD(n^1)), 117 ms] (204) CdtProblem (205) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (206) CdtProblem (207) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (208) CdtProblem (209) CdtGraphSplitRhsProof [BOTH BOUNDS(ID, ID), 0 ms] (210) CdtProblem (211) CdtRuleRemovalProof [UPPER BOUND(ADD(n^1)), 126 ms] (212) CdtProblem (213) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (214) CdtProblem (215) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (216) CdtProblem (217) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (218) CdtProblem (219) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (220) CdtProblem (221) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (222) CdtProblem (223) CdtGraphSplitRhsProof [BOTH BOUNDS(ID, ID), 0 ms] (224) CdtProblem (225) CdtRuleRemovalProof [UPPER BOUND(ADD(n^1)), 200 ms] (226) CdtProblem (227) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (228) CdtProblem (229) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (230) CdtProblem (231) CdtGraphSplitRhsProof [BOTH BOUNDS(ID, ID), 0 ms] (232) CdtProblem (233) CdtRuleRemovalProof [UPPER BOUND(ADD(n^1)), 192 ms] (234) CdtProblem (235) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (236) CdtProblem (237) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (238) CdtProblem (239) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (240) CdtProblem (241) CdtGraphSplitRhsProof [BOTH BOUNDS(ID, ID), 0 ms] (242) CdtProblem (243) CdtRuleRemovalProof [UPPER BOUND(ADD(n^1)), 230 ms] (244) CdtProblem (245) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (246) CdtProblem (247) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (248) CdtProblem (249) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (250) CdtProblem (251) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 2 ms] (252) CdtProblem (253) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (254) CdtProblem (255) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (256) CdtProblem (257) CdtRuleRemovalProof [UPPER BOUND(ADD(n^1)), 207 ms] (258) CdtProblem (259) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 13 ms] (260) CdtProblem (261) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (262) CdtProblem (263) CdtRuleRemovalProof [UPPER BOUND(ADD(n^1)), 254 ms] (264) CdtProblem (265) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (266) CdtProblem (267) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (268) CdtProblem (269) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 35 ms] (270) CdtProblem (271) CdtRewritingProof [BOTH BOUNDS(ID, ID), 0 ms] (272) CdtProblem (273) CdtRewritingProof [BOTH BOUNDS(ID, ID), 0 ms] (274) CdtProblem (275) CdtRewritingProof [BOTH BOUNDS(ID, ID), 0 ms] (276) CdtProblem (277) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (278) CdtProblem (279) CdtGraphSplitRhsProof [BOTH BOUNDS(ID, ID), 0 ms] (280) CdtProblem (281) CdtRuleRemovalProof [UPPER BOUND(ADD(n^1)), 273 ms] (282) CdtProblem (283) CdtRewritingProof [BOTH BOUNDS(ID, ID), 0 ms] (284) CdtProblem (285) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (286) CdtProblem (287) CdtGraphSplitRhsProof [BOTH BOUNDS(ID, ID), 0 ms] (288) CdtProblem (289) CdtRuleRemovalProof [UPPER BOUND(ADD(n^1)), 300 ms] (290) CdtProblem (291) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (292) CdtProblem (293) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (294) CdtProblem (295) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (296) CdtProblem (297) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (298) CdtProblem (299) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (300) CdtProblem (301) CdtRewritingProof [BOTH BOUNDS(ID, ID), 15 ms] (302) CdtProblem (303) CdtRewritingProof [BOTH BOUNDS(ID, ID), 0 ms] (304) CdtProblem (305) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 12 ms] (306) CdtProblem (307) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (308) CdtProblem (309) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 16 ms] (310) CdtProblem (311) CdtRewritingProof [BOTH BOUNDS(ID, ID), 5 ms] (312) CdtProblem (313) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (314) CdtProblem (315) CdtRuleRemovalProof [UPPER BOUND(ADD(n^1)), 254 ms] (316) CdtProblem (317) CdtRewritingProof [BOTH BOUNDS(ID, ID), 0 ms] (318) CdtProblem (319) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (320) CdtProblem (321) CdtRuleRemovalProof [UPPER BOUND(ADD(n^1)), 198 ms] (322) CdtProblem (323) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 27 ms] (324) CdtProblem (325) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (326) CdtProblem (327) CdtRewritingProof [BOTH BOUNDS(ID, ID), 45 ms] (328) CdtProblem (329) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (330) CdtProblem (331) CdtKnowledgeProof [BOTH BOUNDS(ID, ID), 0 ms] (332) CdtProblem (333) CdtRewritingProof [BOTH BOUNDS(ID, ID), 40 ms] (334) CdtProblem (335) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (336) CdtProblem (337) CdtKnowledgeProof [BOTH BOUNDS(ID, ID), 0 ms] (338) CdtProblem (339) CdtForwardInstantiationProof [BOTH BOUNDS(ID, ID), 0 ms] (340) CdtProblem (341) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (342) CdtProblem (343) CdtRewritingProof [BOTH BOUNDS(ID, ID), 14 ms] (344) CdtProblem (345) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (346) CdtProblem (347) CdtRewritingProof [BOTH BOUNDS(ID, ID), 0 ms] (348) CdtProblem (349) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (350) CdtProblem (351) CdtRewritingProof [BOTH BOUNDS(ID, ID), 34 ms] (352) CdtProblem (353) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (354) CdtProblem ---------------------------------------- (0) Obligation: The Runtime Complexity (parallel-innermost) of the given CpxTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: min(0, y) -> 0 min(x, 0) -> 0 min(s(x), s(y)) -> s(min(x, y)) max(0, y) -> y max(x, 0) -> x max(s(x), s(y)) -> s(max(x, y)) twice(0) -> 0 twice(s(x)) -> s(s(twice(x))) -(x, 0) -> x -(s(x), s(y)) -> -(x, y) p(s(x)) -> x f(s(x), s(y)) -> f(-(max(s(x), s(y)), min(s(x), s(y))), p(twice(min(x, y)))) 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: min(0', y) -> 0' min(x, 0') -> 0' min(s(x), s(y)) -> s(min(x, y)) max(0', y) -> y max(x, 0') -> x max(s(x), s(y)) -> s(max(x, y)) twice(0') -> 0' twice(s(x)) -> s(s(twice(x))) -(x, 0') -> x -(s(x), s(y)) -> -(x, y) p(s(x)) -> x f(s(x), s(y)) -> f(-(max(s(x), s(y)), min(s(x), s(y))), p(twice(min(x, y)))) 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: min(0, y) -> 0 min(x, 0) -> 0 min(s(x), s(y)) -> s(min(x, y)) max(0, y) -> y max(x, 0) -> x max(s(x), s(y)) -> s(max(x, y)) twice(0) -> 0 twice(s(x)) -> s(s(twice(x))) -(x, 0) -> x -(s(x), s(y)) -> -(x, y) p(s(x)) -> x f(s(x), s(y)) -> f(-(max(s(x), s(y)), min(s(x), s(y))), p(twice(min(x, y)))) 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: min(0, z0) -> 0 min(z0, 0) -> 0 min(s(z0), s(z1)) -> s(min(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 max(s(z0), s(z1)) -> s(max(z0, z1)) twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) p(s(z0)) -> z0 f(s(z0), s(z1)) -> f(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))) Tuples: MIN(0, z0) -> c MIN(z0, 0) -> c1 MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(0, z0) -> c3 MAX(z0, 0) -> c4 MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(0) -> c6 TWICE(s(z0)) -> c7(TWICE(z0)) -'(z0, 0) -> c8 -'(s(z0), s(z1)) -> c9(-'(z0, z1)) P(s(z0)) -> c10 F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), P(twice(min(z0, z1))), TWICE(min(z0, z1)), MIN(z0, z1)) S tuples: MIN(0, z0) -> c MIN(z0, 0) -> c1 MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(0, z0) -> c3 MAX(z0, 0) -> c4 MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(0) -> c6 TWICE(s(z0)) -> c7(TWICE(z0)) -'(z0, 0) -> c8 -'(s(z0), s(z1)) -> c9(-'(z0, z1)) P(s(z0)) -> c10 F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), P(twice(min(z0, z1))), TWICE(min(z0, z1)), MIN(z0, z1)) K tuples:none Defined Rule Symbols: min_2, max_2, twice_1, -_2, p_1, f_2 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, P_1, F_2 Compound Symbols: c, c1, c2_1, c3, c4, c5_1, c6, c7_1, c8, c9_1, c10, c11_3, c12_3, c13_4 ---------------------------------------- (7) CdtToCpxRelTrsProof (BOTH BOUNDS(ID, ID)) Converted S to standard rules, and D \ S as well as R to relative rules. ---------------------------------------- (8) Obligation: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(n^1, INF). The TRS R consists of the following rules: MIN(0, z0) -> c MIN(z0, 0) -> c1 MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(0, z0) -> c3 MAX(z0, 0) -> c4 MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(0) -> c6 TWICE(s(z0)) -> c7(TWICE(z0)) -'(z0, 0) -> c8 -'(s(z0), s(z1)) -> c9(-'(z0, z1)) P(s(z0)) -> c10 F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), P(twice(min(z0, z1))), TWICE(min(z0, z1)), MIN(z0, z1)) The (relative) TRS S consists of the following rules: min(0, z0) -> 0 min(z0, 0) -> 0 min(s(z0), s(z1)) -> s(min(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 max(s(z0), s(z1)) -> s(max(z0, z1)) twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) p(s(z0)) -> z0 f(s(z0), s(z1)) -> f(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(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(n^1, INF). The TRS R consists of the following rules: MIN(0', z0) -> c MIN(z0, 0') -> c1 MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(0', z0) -> c3 MAX(z0, 0') -> c4 MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(0') -> c6 TWICE(s(z0)) -> c7(TWICE(z0)) -'(z0, 0') -> c8 -'(s(z0), s(z1)) -> c9(-'(z0, z1)) P(s(z0)) -> c10 F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), P(twice(min(z0, z1))), TWICE(min(z0, z1)), MIN(z0, z1)) The (relative) TRS S consists of the following rules: min(0', z0) -> 0' min(z0, 0') -> 0' min(s(z0), s(z1)) -> s(min(z0, z1)) max(0', z0) -> z0 max(z0, 0') -> z0 max(s(z0), s(z1)) -> s(max(z0, z1)) twice(0') -> 0' twice(s(z0)) -> s(s(twice(z0))) -(z0, 0') -> z0 -(s(z0), s(z1)) -> -(z0, z1) p(s(z0)) -> z0 f(s(z0), s(z1)) -> f(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))) Rewrite Strategy: INNERMOST ---------------------------------------- (11) TypeInferenceProof (BOTH BOUNDS(ID, ID)) Inferred types. ---------------------------------------- (12) Obligation: Innermost TRS: Rules: MIN(0', z0) -> c MIN(z0, 0') -> c1 MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(0', z0) -> c3 MAX(z0, 0') -> c4 MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(0') -> c6 TWICE(s(z0)) -> c7(TWICE(z0)) -'(z0, 0') -> c8 -'(s(z0), s(z1)) -> c9(-'(z0, z1)) P(s(z0)) -> c10 F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), P(twice(min(z0, z1))), TWICE(min(z0, z1)), MIN(z0, z1)) min(0', z0) -> 0' min(z0, 0') -> 0' min(s(z0), s(z1)) -> s(min(z0, z1)) max(0', z0) -> z0 max(z0, 0') -> z0 max(s(z0), s(z1)) -> s(max(z0, z1)) twice(0') -> 0' twice(s(z0)) -> s(s(twice(z0))) -(z0, 0') -> z0 -(s(z0), s(z1)) -> -(z0, z1) p(s(z0)) -> z0 f(s(z0), s(z1)) -> f(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))) Types: MIN :: 0':s -> 0':s -> c:c1:c2 0' :: 0':s c :: c:c1:c2 c1 :: c:c1:c2 s :: 0':s -> 0':s c2 :: c:c1:c2 -> c:c1:c2 MAX :: 0':s -> 0':s -> c3:c4:c5 c3 :: c3:c4:c5 c4 :: c3:c4:c5 c5 :: c3:c4:c5 -> c3:c4:c5 TWICE :: 0':s -> c6:c7 c6 :: c6:c7 c7 :: c6:c7 -> c6:c7 -' :: 0':s -> 0':s -> c8:c9 c8 :: c8:c9 c9 :: c8:c9 -> c8:c9 P :: 0':s -> c10 c10 :: c10 F :: 0':s -> 0':s -> c11:c12:c13 c11 :: c11:c12:c13 -> c8:c9 -> c3:c4:c5 -> c11:c12:c13 - :: 0':s -> 0':s -> 0':s max :: 0':s -> 0':s -> 0':s min :: 0':s -> 0':s -> 0':s p :: 0':s -> 0':s twice :: 0':s -> 0':s c12 :: c11:c12:c13 -> c8:c9 -> c:c1:c2 -> c11:c12:c13 c13 :: c11:c12:c13 -> c10 -> c6:c7 -> c:c1:c2 -> c11:c12:c13 f :: 0':s -> 0':s -> f hole_c:c1:c21_14 :: c:c1:c2 hole_0':s2_14 :: 0':s hole_c3:c4:c53_14 :: c3:c4:c5 hole_c6:c74_14 :: c6:c7 hole_c8:c95_14 :: c8:c9 hole_c106_14 :: c10 hole_c11:c12:c137_14 :: c11:c12:c13 hole_f8_14 :: f gen_c:c1:c29_14 :: Nat -> c:c1:c2 gen_0':s10_14 :: Nat -> 0':s gen_c3:c4:c511_14 :: Nat -> c3:c4:c5 gen_c6:c712_14 :: Nat -> c6:c7 gen_c8:c913_14 :: Nat -> c8:c9 gen_c11:c12:c1314_14 :: Nat -> c11:c12:c13 ---------------------------------------- (13) OrderProof (LOWER BOUND(ID)) Heuristically decided to analyse the following defined symbols: MIN, MAX, TWICE, -', F, -, max, min, twice, f They will be analysed ascendingly in the following order: MIN < F MAX < F TWICE < F -' < F - < F max < F min < F twice < F - < f max < f min < f twice < f ---------------------------------------- (14) Obligation: Innermost TRS: Rules: MIN(0', z0) -> c MIN(z0, 0') -> c1 MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(0', z0) -> c3 MAX(z0, 0') -> c4 MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(0') -> c6 TWICE(s(z0)) -> c7(TWICE(z0)) -'(z0, 0') -> c8 -'(s(z0), s(z1)) -> c9(-'(z0, z1)) P(s(z0)) -> c10 F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), P(twice(min(z0, z1))), TWICE(min(z0, z1)), MIN(z0, z1)) min(0', z0) -> 0' min(z0, 0') -> 0' min(s(z0), s(z1)) -> s(min(z0, z1)) max(0', z0) -> z0 max(z0, 0') -> z0 max(s(z0), s(z1)) -> s(max(z0, z1)) twice(0') -> 0' twice(s(z0)) -> s(s(twice(z0))) -(z0, 0') -> z0 -(s(z0), s(z1)) -> -(z0, z1) p(s(z0)) -> z0 f(s(z0), s(z1)) -> f(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))) Types: MIN :: 0':s -> 0':s -> c:c1:c2 0' :: 0':s c :: c:c1:c2 c1 :: c:c1:c2 s :: 0':s -> 0':s c2 :: c:c1:c2 -> c:c1:c2 MAX :: 0':s -> 0':s -> c3:c4:c5 c3 :: c3:c4:c5 c4 :: c3:c4:c5 c5 :: c3:c4:c5 -> c3:c4:c5 TWICE :: 0':s -> c6:c7 c6 :: c6:c7 c7 :: c6:c7 -> c6:c7 -' :: 0':s -> 0':s -> c8:c9 c8 :: c8:c9 c9 :: c8:c9 -> c8:c9 P :: 0':s -> c10 c10 :: c10 F :: 0':s -> 0':s -> c11:c12:c13 c11 :: c11:c12:c13 -> c8:c9 -> c3:c4:c5 -> c11:c12:c13 - :: 0':s -> 0':s -> 0':s max :: 0':s -> 0':s -> 0':s min :: 0':s -> 0':s -> 0':s p :: 0':s -> 0':s twice :: 0':s -> 0':s c12 :: c11:c12:c13 -> c8:c9 -> c:c1:c2 -> c11:c12:c13 c13 :: c11:c12:c13 -> c10 -> c6:c7 -> c:c1:c2 -> c11:c12:c13 f :: 0':s -> 0':s -> f hole_c:c1:c21_14 :: c:c1:c2 hole_0':s2_14 :: 0':s hole_c3:c4:c53_14 :: c3:c4:c5 hole_c6:c74_14 :: c6:c7 hole_c8:c95_14 :: c8:c9 hole_c106_14 :: c10 hole_c11:c12:c137_14 :: c11:c12:c13 hole_f8_14 :: f gen_c:c1:c29_14 :: Nat -> c:c1:c2 gen_0':s10_14 :: Nat -> 0':s gen_c3:c4:c511_14 :: Nat -> c3:c4:c5 gen_c6:c712_14 :: Nat -> c6:c7 gen_c8:c913_14 :: Nat -> c8:c9 gen_c11:c12:c1314_14 :: Nat -> c11:c12:c13 Generator Equations: gen_c:c1:c29_14(0) <=> c gen_c:c1:c29_14(+(x, 1)) <=> c2(gen_c:c1:c29_14(x)) gen_0':s10_14(0) <=> 0' gen_0':s10_14(+(x, 1)) <=> s(gen_0':s10_14(x)) gen_c3:c4:c511_14(0) <=> c3 gen_c3:c4:c511_14(+(x, 1)) <=> c5(gen_c3:c4:c511_14(x)) gen_c6:c712_14(0) <=> c6 gen_c6:c712_14(+(x, 1)) <=> c7(gen_c6:c712_14(x)) gen_c8:c913_14(0) <=> c8 gen_c8:c913_14(+(x, 1)) <=> c9(gen_c8:c913_14(x)) gen_c11:c12:c1314_14(0) <=> hole_c11:c12:c137_14 gen_c11:c12:c1314_14(+(x, 1)) <=> c11(gen_c11:c12:c1314_14(x), c8, c3) The following defined symbols remain to be analysed: MIN, MAX, TWICE, -', F, -, max, min, twice, f They will be analysed ascendingly in the following order: MIN < F MAX < F TWICE < F -' < F - < F max < F min < F twice < F - < f max < f min < f twice < f ---------------------------------------- (15) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: MIN(gen_0':s10_14(n16_14), gen_0':s10_14(n16_14)) -> gen_c:c1:c29_14(n16_14), rt in Omega(1 + n16_14) Induction Base: MIN(gen_0':s10_14(0), gen_0':s10_14(0)) ->_R^Omega(1) c Induction Step: MIN(gen_0':s10_14(+(n16_14, 1)), gen_0':s10_14(+(n16_14, 1))) ->_R^Omega(1) c2(MIN(gen_0':s10_14(n16_14), gen_0':s10_14(n16_14))) ->_IH c2(gen_c:c1:c29_14(c17_14)) 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: MIN(0', z0) -> c MIN(z0, 0') -> c1 MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(0', z0) -> c3 MAX(z0, 0') -> c4 MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(0') -> c6 TWICE(s(z0)) -> c7(TWICE(z0)) -'(z0, 0') -> c8 -'(s(z0), s(z1)) -> c9(-'(z0, z1)) P(s(z0)) -> c10 F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), P(twice(min(z0, z1))), TWICE(min(z0, z1)), MIN(z0, z1)) min(0', z0) -> 0' min(z0, 0') -> 0' min(s(z0), s(z1)) -> s(min(z0, z1)) max(0', z0) -> z0 max(z0, 0') -> z0 max(s(z0), s(z1)) -> s(max(z0, z1)) twice(0') -> 0' twice(s(z0)) -> s(s(twice(z0))) -(z0, 0') -> z0 -(s(z0), s(z1)) -> -(z0, z1) p(s(z0)) -> z0 f(s(z0), s(z1)) -> f(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))) Types: MIN :: 0':s -> 0':s -> c:c1:c2 0' :: 0':s c :: c:c1:c2 c1 :: c:c1:c2 s :: 0':s -> 0':s c2 :: c:c1:c2 -> c:c1:c2 MAX :: 0':s -> 0':s -> c3:c4:c5 c3 :: c3:c4:c5 c4 :: c3:c4:c5 c5 :: c3:c4:c5 -> c3:c4:c5 TWICE :: 0':s -> c6:c7 c6 :: c6:c7 c7 :: c6:c7 -> c6:c7 -' :: 0':s -> 0':s -> c8:c9 c8 :: c8:c9 c9 :: c8:c9 -> c8:c9 P :: 0':s -> c10 c10 :: c10 F :: 0':s -> 0':s -> c11:c12:c13 c11 :: c11:c12:c13 -> c8:c9 -> c3:c4:c5 -> c11:c12:c13 - :: 0':s -> 0':s -> 0':s max :: 0':s -> 0':s -> 0':s min :: 0':s -> 0':s -> 0':s p :: 0':s -> 0':s twice :: 0':s -> 0':s c12 :: c11:c12:c13 -> c8:c9 -> c:c1:c2 -> c11:c12:c13 c13 :: c11:c12:c13 -> c10 -> c6:c7 -> c:c1:c2 -> c11:c12:c13 f :: 0':s -> 0':s -> f hole_c:c1:c21_14 :: c:c1:c2 hole_0':s2_14 :: 0':s hole_c3:c4:c53_14 :: c3:c4:c5 hole_c6:c74_14 :: c6:c7 hole_c8:c95_14 :: c8:c9 hole_c106_14 :: c10 hole_c11:c12:c137_14 :: c11:c12:c13 hole_f8_14 :: f gen_c:c1:c29_14 :: Nat -> c:c1:c2 gen_0':s10_14 :: Nat -> 0':s gen_c3:c4:c511_14 :: Nat -> c3:c4:c5 gen_c6:c712_14 :: Nat -> c6:c7 gen_c8:c913_14 :: Nat -> c8:c9 gen_c11:c12:c1314_14 :: Nat -> c11:c12:c13 Generator Equations: gen_c:c1:c29_14(0) <=> c gen_c:c1:c29_14(+(x, 1)) <=> c2(gen_c:c1:c29_14(x)) gen_0':s10_14(0) <=> 0' gen_0':s10_14(+(x, 1)) <=> s(gen_0':s10_14(x)) gen_c3:c4:c511_14(0) <=> c3 gen_c3:c4:c511_14(+(x, 1)) <=> c5(gen_c3:c4:c511_14(x)) gen_c6:c712_14(0) <=> c6 gen_c6:c712_14(+(x, 1)) <=> c7(gen_c6:c712_14(x)) gen_c8:c913_14(0) <=> c8 gen_c8:c913_14(+(x, 1)) <=> c9(gen_c8:c913_14(x)) gen_c11:c12:c1314_14(0) <=> hole_c11:c12:c137_14 gen_c11:c12:c1314_14(+(x, 1)) <=> c11(gen_c11:c12:c1314_14(x), c8, c3) The following defined symbols remain to be analysed: MIN, MAX, TWICE, -', F, -, max, min, twice, f They will be analysed ascendingly in the following order: MIN < F MAX < F TWICE < F -' < F - < F max < F min < F twice < F - < f max < f min < f twice < f ---------------------------------------- (18) LowerBoundPropagationProof (FINISHED) Propagated lower bound. ---------------------------------------- (19) BOUNDS(n^1, INF) ---------------------------------------- (20) Obligation: Innermost TRS: Rules: MIN(0', z0) -> c MIN(z0, 0') -> c1 MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(0', z0) -> c3 MAX(z0, 0') -> c4 MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(0') -> c6 TWICE(s(z0)) -> c7(TWICE(z0)) -'(z0, 0') -> c8 -'(s(z0), s(z1)) -> c9(-'(z0, z1)) P(s(z0)) -> c10 F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), P(twice(min(z0, z1))), TWICE(min(z0, z1)), MIN(z0, z1)) min(0', z0) -> 0' min(z0, 0') -> 0' min(s(z0), s(z1)) -> s(min(z0, z1)) max(0', z0) -> z0 max(z0, 0') -> z0 max(s(z0), s(z1)) -> s(max(z0, z1)) twice(0') -> 0' twice(s(z0)) -> s(s(twice(z0))) -(z0, 0') -> z0 -(s(z0), s(z1)) -> -(z0, z1) p(s(z0)) -> z0 f(s(z0), s(z1)) -> f(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))) Types: MIN :: 0':s -> 0':s -> c:c1:c2 0' :: 0':s c :: c:c1:c2 c1 :: c:c1:c2 s :: 0':s -> 0':s c2 :: c:c1:c2 -> c:c1:c2 MAX :: 0':s -> 0':s -> c3:c4:c5 c3 :: c3:c4:c5 c4 :: c3:c4:c5 c5 :: c3:c4:c5 -> c3:c4:c5 TWICE :: 0':s -> c6:c7 c6 :: c6:c7 c7 :: c6:c7 -> c6:c7 -' :: 0':s -> 0':s -> c8:c9 c8 :: c8:c9 c9 :: c8:c9 -> c8:c9 P :: 0':s -> c10 c10 :: c10 F :: 0':s -> 0':s -> c11:c12:c13 c11 :: c11:c12:c13 -> c8:c9 -> c3:c4:c5 -> c11:c12:c13 - :: 0':s -> 0':s -> 0':s max :: 0':s -> 0':s -> 0':s min :: 0':s -> 0':s -> 0':s p :: 0':s -> 0':s twice :: 0':s -> 0':s c12 :: c11:c12:c13 -> c8:c9 -> c:c1:c2 -> c11:c12:c13 c13 :: c11:c12:c13 -> c10 -> c6:c7 -> c:c1:c2 -> c11:c12:c13 f :: 0':s -> 0':s -> f hole_c:c1:c21_14 :: c:c1:c2 hole_0':s2_14 :: 0':s hole_c3:c4:c53_14 :: c3:c4:c5 hole_c6:c74_14 :: c6:c7 hole_c8:c95_14 :: c8:c9 hole_c106_14 :: c10 hole_c11:c12:c137_14 :: c11:c12:c13 hole_f8_14 :: f gen_c:c1:c29_14 :: Nat -> c:c1:c2 gen_0':s10_14 :: Nat -> 0':s gen_c3:c4:c511_14 :: Nat -> c3:c4:c5 gen_c6:c712_14 :: Nat -> c6:c7 gen_c8:c913_14 :: Nat -> c8:c9 gen_c11:c12:c1314_14 :: Nat -> c11:c12:c13 Lemmas: MIN(gen_0':s10_14(n16_14), gen_0':s10_14(n16_14)) -> gen_c:c1:c29_14(n16_14), rt in Omega(1 + n16_14) Generator Equations: gen_c:c1:c29_14(0) <=> c gen_c:c1:c29_14(+(x, 1)) <=> c2(gen_c:c1:c29_14(x)) gen_0':s10_14(0) <=> 0' gen_0':s10_14(+(x, 1)) <=> s(gen_0':s10_14(x)) gen_c3:c4:c511_14(0) <=> c3 gen_c3:c4:c511_14(+(x, 1)) <=> c5(gen_c3:c4:c511_14(x)) gen_c6:c712_14(0) <=> c6 gen_c6:c712_14(+(x, 1)) <=> c7(gen_c6:c712_14(x)) gen_c8:c913_14(0) <=> c8 gen_c8:c913_14(+(x, 1)) <=> c9(gen_c8:c913_14(x)) gen_c11:c12:c1314_14(0) <=> hole_c11:c12:c137_14 gen_c11:c12:c1314_14(+(x, 1)) <=> c11(gen_c11:c12:c1314_14(x), c8, c3) The following defined symbols remain to be analysed: MAX, TWICE, -', F, -, max, min, twice, f They will be analysed ascendingly in the following order: MAX < F TWICE < F -' < F - < F max < F min < F twice < F - < f max < f min < f twice < f ---------------------------------------- (21) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: MAX(gen_0':s10_14(n536_14), gen_0':s10_14(n536_14)) -> gen_c3:c4:c511_14(n536_14), rt in Omega(1 + n536_14) Induction Base: MAX(gen_0':s10_14(0), gen_0':s10_14(0)) ->_R^Omega(1) c3 Induction Step: MAX(gen_0':s10_14(+(n536_14, 1)), gen_0':s10_14(+(n536_14, 1))) ->_R^Omega(1) c5(MAX(gen_0':s10_14(n536_14), gen_0':s10_14(n536_14))) ->_IH c5(gen_c3:c4:c511_14(c537_14)) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (22) Obligation: Innermost TRS: Rules: MIN(0', z0) -> c MIN(z0, 0') -> c1 MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(0', z0) -> c3 MAX(z0, 0') -> c4 MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(0') -> c6 TWICE(s(z0)) -> c7(TWICE(z0)) -'(z0, 0') -> c8 -'(s(z0), s(z1)) -> c9(-'(z0, z1)) P(s(z0)) -> c10 F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), P(twice(min(z0, z1))), TWICE(min(z0, z1)), MIN(z0, z1)) min(0', z0) -> 0' min(z0, 0') -> 0' min(s(z0), s(z1)) -> s(min(z0, z1)) max(0', z0) -> z0 max(z0, 0') -> z0 max(s(z0), s(z1)) -> s(max(z0, z1)) twice(0') -> 0' twice(s(z0)) -> s(s(twice(z0))) -(z0, 0') -> z0 -(s(z0), s(z1)) -> -(z0, z1) p(s(z0)) -> z0 f(s(z0), s(z1)) -> f(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))) Types: MIN :: 0':s -> 0':s -> c:c1:c2 0' :: 0':s c :: c:c1:c2 c1 :: c:c1:c2 s :: 0':s -> 0':s c2 :: c:c1:c2 -> c:c1:c2 MAX :: 0':s -> 0':s -> c3:c4:c5 c3 :: c3:c4:c5 c4 :: c3:c4:c5 c5 :: c3:c4:c5 -> c3:c4:c5 TWICE :: 0':s -> c6:c7 c6 :: c6:c7 c7 :: c6:c7 -> c6:c7 -' :: 0':s -> 0':s -> c8:c9 c8 :: c8:c9 c9 :: c8:c9 -> c8:c9 P :: 0':s -> c10 c10 :: c10 F :: 0':s -> 0':s -> c11:c12:c13 c11 :: c11:c12:c13 -> c8:c9 -> c3:c4:c5 -> c11:c12:c13 - :: 0':s -> 0':s -> 0':s max :: 0':s -> 0':s -> 0':s min :: 0':s -> 0':s -> 0':s p :: 0':s -> 0':s twice :: 0':s -> 0':s c12 :: c11:c12:c13 -> c8:c9 -> c:c1:c2 -> c11:c12:c13 c13 :: c11:c12:c13 -> c10 -> c6:c7 -> c:c1:c2 -> c11:c12:c13 f :: 0':s -> 0':s -> f hole_c:c1:c21_14 :: c:c1:c2 hole_0':s2_14 :: 0':s hole_c3:c4:c53_14 :: c3:c4:c5 hole_c6:c74_14 :: c6:c7 hole_c8:c95_14 :: c8:c9 hole_c106_14 :: c10 hole_c11:c12:c137_14 :: c11:c12:c13 hole_f8_14 :: f gen_c:c1:c29_14 :: Nat -> c:c1:c2 gen_0':s10_14 :: Nat -> 0':s gen_c3:c4:c511_14 :: Nat -> c3:c4:c5 gen_c6:c712_14 :: Nat -> c6:c7 gen_c8:c913_14 :: Nat -> c8:c9 gen_c11:c12:c1314_14 :: Nat -> c11:c12:c13 Lemmas: MIN(gen_0':s10_14(n16_14), gen_0':s10_14(n16_14)) -> gen_c:c1:c29_14(n16_14), rt in Omega(1 + n16_14) MAX(gen_0':s10_14(n536_14), gen_0':s10_14(n536_14)) -> gen_c3:c4:c511_14(n536_14), rt in Omega(1 + n536_14) Generator Equations: gen_c:c1:c29_14(0) <=> c gen_c:c1:c29_14(+(x, 1)) <=> c2(gen_c:c1:c29_14(x)) gen_0':s10_14(0) <=> 0' gen_0':s10_14(+(x, 1)) <=> s(gen_0':s10_14(x)) gen_c3:c4:c511_14(0) <=> c3 gen_c3:c4:c511_14(+(x, 1)) <=> c5(gen_c3:c4:c511_14(x)) gen_c6:c712_14(0) <=> c6 gen_c6:c712_14(+(x, 1)) <=> c7(gen_c6:c712_14(x)) gen_c8:c913_14(0) <=> c8 gen_c8:c913_14(+(x, 1)) <=> c9(gen_c8:c913_14(x)) gen_c11:c12:c1314_14(0) <=> hole_c11:c12:c137_14 gen_c11:c12:c1314_14(+(x, 1)) <=> c11(gen_c11:c12:c1314_14(x), c8, c3) The following defined symbols remain to be analysed: TWICE, -', F, -, max, min, twice, f They will be analysed ascendingly in the following order: TWICE < F -' < F - < F max < F min < F twice < F - < f max < f min < f twice < f ---------------------------------------- (23) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: TWICE(gen_0':s10_14(n1131_14)) -> gen_c6:c712_14(n1131_14), rt in Omega(1 + n1131_14) Induction Base: TWICE(gen_0':s10_14(0)) ->_R^Omega(1) c6 Induction Step: TWICE(gen_0':s10_14(+(n1131_14, 1))) ->_R^Omega(1) c7(TWICE(gen_0':s10_14(n1131_14))) ->_IH c7(gen_c6:c712_14(c1132_14)) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (24) Obligation: Innermost TRS: Rules: MIN(0', z0) -> c MIN(z0, 0') -> c1 MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(0', z0) -> c3 MAX(z0, 0') -> c4 MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(0') -> c6 TWICE(s(z0)) -> c7(TWICE(z0)) -'(z0, 0') -> c8 -'(s(z0), s(z1)) -> c9(-'(z0, z1)) P(s(z0)) -> c10 F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), P(twice(min(z0, z1))), TWICE(min(z0, z1)), MIN(z0, z1)) min(0', z0) -> 0' min(z0, 0') -> 0' min(s(z0), s(z1)) -> s(min(z0, z1)) max(0', z0) -> z0 max(z0, 0') -> z0 max(s(z0), s(z1)) -> s(max(z0, z1)) twice(0') -> 0' twice(s(z0)) -> s(s(twice(z0))) -(z0, 0') -> z0 -(s(z0), s(z1)) -> -(z0, z1) p(s(z0)) -> z0 f(s(z0), s(z1)) -> f(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))) Types: MIN :: 0':s -> 0':s -> c:c1:c2 0' :: 0':s c :: c:c1:c2 c1 :: c:c1:c2 s :: 0':s -> 0':s c2 :: c:c1:c2 -> c:c1:c2 MAX :: 0':s -> 0':s -> c3:c4:c5 c3 :: c3:c4:c5 c4 :: c3:c4:c5 c5 :: c3:c4:c5 -> c3:c4:c5 TWICE :: 0':s -> c6:c7 c6 :: c6:c7 c7 :: c6:c7 -> c6:c7 -' :: 0':s -> 0':s -> c8:c9 c8 :: c8:c9 c9 :: c8:c9 -> c8:c9 P :: 0':s -> c10 c10 :: c10 F :: 0':s -> 0':s -> c11:c12:c13 c11 :: c11:c12:c13 -> c8:c9 -> c3:c4:c5 -> c11:c12:c13 - :: 0':s -> 0':s -> 0':s max :: 0':s -> 0':s -> 0':s min :: 0':s -> 0':s -> 0':s p :: 0':s -> 0':s twice :: 0':s -> 0':s c12 :: c11:c12:c13 -> c8:c9 -> c:c1:c2 -> c11:c12:c13 c13 :: c11:c12:c13 -> c10 -> c6:c7 -> c:c1:c2 -> c11:c12:c13 f :: 0':s -> 0':s -> f hole_c:c1:c21_14 :: c:c1:c2 hole_0':s2_14 :: 0':s hole_c3:c4:c53_14 :: c3:c4:c5 hole_c6:c74_14 :: c6:c7 hole_c8:c95_14 :: c8:c9 hole_c106_14 :: c10 hole_c11:c12:c137_14 :: c11:c12:c13 hole_f8_14 :: f gen_c:c1:c29_14 :: Nat -> c:c1:c2 gen_0':s10_14 :: Nat -> 0':s gen_c3:c4:c511_14 :: Nat -> c3:c4:c5 gen_c6:c712_14 :: Nat -> c6:c7 gen_c8:c913_14 :: Nat -> c8:c9 gen_c11:c12:c1314_14 :: Nat -> c11:c12:c13 Lemmas: MIN(gen_0':s10_14(n16_14), gen_0':s10_14(n16_14)) -> gen_c:c1:c29_14(n16_14), rt in Omega(1 + n16_14) MAX(gen_0':s10_14(n536_14), gen_0':s10_14(n536_14)) -> gen_c3:c4:c511_14(n536_14), rt in Omega(1 + n536_14) TWICE(gen_0':s10_14(n1131_14)) -> gen_c6:c712_14(n1131_14), rt in Omega(1 + n1131_14) Generator Equations: gen_c:c1:c29_14(0) <=> c gen_c:c1:c29_14(+(x, 1)) <=> c2(gen_c:c1:c29_14(x)) gen_0':s10_14(0) <=> 0' gen_0':s10_14(+(x, 1)) <=> s(gen_0':s10_14(x)) gen_c3:c4:c511_14(0) <=> c3 gen_c3:c4:c511_14(+(x, 1)) <=> c5(gen_c3:c4:c511_14(x)) gen_c6:c712_14(0) <=> c6 gen_c6:c712_14(+(x, 1)) <=> c7(gen_c6:c712_14(x)) gen_c8:c913_14(0) <=> c8 gen_c8:c913_14(+(x, 1)) <=> c9(gen_c8:c913_14(x)) gen_c11:c12:c1314_14(0) <=> hole_c11:c12:c137_14 gen_c11:c12:c1314_14(+(x, 1)) <=> c11(gen_c11:c12:c1314_14(x), c8, c3) The following defined symbols remain to be analysed: -', F, -, max, min, twice, f They will be analysed ascendingly in the following order: -' < F - < F max < F min < F twice < F - < f max < f min < f twice < f ---------------------------------------- (25) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: -'(gen_0':s10_14(n1566_14), gen_0':s10_14(n1566_14)) -> gen_c8:c913_14(n1566_14), rt in Omega(1 + n1566_14) Induction Base: -'(gen_0':s10_14(0), gen_0':s10_14(0)) ->_R^Omega(1) c8 Induction Step: -'(gen_0':s10_14(+(n1566_14, 1)), gen_0':s10_14(+(n1566_14, 1))) ->_R^Omega(1) c9(-'(gen_0':s10_14(n1566_14), gen_0':s10_14(n1566_14))) ->_IH c9(gen_c8:c913_14(c1567_14)) We have rt in Omega(n^1) and sz in O(n). Thus, we have irc_R in Omega(n). ---------------------------------------- (26) Obligation: Innermost TRS: Rules: MIN(0', z0) -> c MIN(z0, 0') -> c1 MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(0', z0) -> c3 MAX(z0, 0') -> c4 MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(0') -> c6 TWICE(s(z0)) -> c7(TWICE(z0)) -'(z0, 0') -> c8 -'(s(z0), s(z1)) -> c9(-'(z0, z1)) P(s(z0)) -> c10 F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), P(twice(min(z0, z1))), TWICE(min(z0, z1)), MIN(z0, z1)) min(0', z0) -> 0' min(z0, 0') -> 0' min(s(z0), s(z1)) -> s(min(z0, z1)) max(0', z0) -> z0 max(z0, 0') -> z0 max(s(z0), s(z1)) -> s(max(z0, z1)) twice(0') -> 0' twice(s(z0)) -> s(s(twice(z0))) -(z0, 0') -> z0 -(s(z0), s(z1)) -> -(z0, z1) p(s(z0)) -> z0 f(s(z0), s(z1)) -> f(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))) Types: MIN :: 0':s -> 0':s -> c:c1:c2 0' :: 0':s c :: c:c1:c2 c1 :: c:c1:c2 s :: 0':s -> 0':s c2 :: c:c1:c2 -> c:c1:c2 MAX :: 0':s -> 0':s -> c3:c4:c5 c3 :: c3:c4:c5 c4 :: c3:c4:c5 c5 :: c3:c4:c5 -> c3:c4:c5 TWICE :: 0':s -> c6:c7 c6 :: c6:c7 c7 :: c6:c7 -> c6:c7 -' :: 0':s -> 0':s -> c8:c9 c8 :: c8:c9 c9 :: c8:c9 -> c8:c9 P :: 0':s -> c10 c10 :: c10 F :: 0':s -> 0':s -> c11:c12:c13 c11 :: c11:c12:c13 -> c8:c9 -> c3:c4:c5 -> c11:c12:c13 - :: 0':s -> 0':s -> 0':s max :: 0':s -> 0':s -> 0':s min :: 0':s -> 0':s -> 0':s p :: 0':s -> 0':s twice :: 0':s -> 0':s c12 :: c11:c12:c13 -> c8:c9 -> c:c1:c2 -> c11:c12:c13 c13 :: c11:c12:c13 -> c10 -> c6:c7 -> c:c1:c2 -> c11:c12:c13 f :: 0':s -> 0':s -> f hole_c:c1:c21_14 :: c:c1:c2 hole_0':s2_14 :: 0':s hole_c3:c4:c53_14 :: c3:c4:c5 hole_c6:c74_14 :: c6:c7 hole_c8:c95_14 :: c8:c9 hole_c106_14 :: c10 hole_c11:c12:c137_14 :: c11:c12:c13 hole_f8_14 :: f gen_c:c1:c29_14 :: Nat -> c:c1:c2 gen_0':s10_14 :: Nat -> 0':s gen_c3:c4:c511_14 :: Nat -> c3:c4:c5 gen_c6:c712_14 :: Nat -> c6:c7 gen_c8:c913_14 :: Nat -> c8:c9 gen_c11:c12:c1314_14 :: Nat -> c11:c12:c13 Lemmas: MIN(gen_0':s10_14(n16_14), gen_0':s10_14(n16_14)) -> gen_c:c1:c29_14(n16_14), rt in Omega(1 + n16_14) MAX(gen_0':s10_14(n536_14), gen_0':s10_14(n536_14)) -> gen_c3:c4:c511_14(n536_14), rt in Omega(1 + n536_14) TWICE(gen_0':s10_14(n1131_14)) -> gen_c6:c712_14(n1131_14), rt in Omega(1 + n1131_14) -'(gen_0':s10_14(n1566_14), gen_0':s10_14(n1566_14)) -> gen_c8:c913_14(n1566_14), rt in Omega(1 + n1566_14) Generator Equations: gen_c:c1:c29_14(0) <=> c gen_c:c1:c29_14(+(x, 1)) <=> c2(gen_c:c1:c29_14(x)) gen_0':s10_14(0) <=> 0' gen_0':s10_14(+(x, 1)) <=> s(gen_0':s10_14(x)) gen_c3:c4:c511_14(0) <=> c3 gen_c3:c4:c511_14(+(x, 1)) <=> c5(gen_c3:c4:c511_14(x)) gen_c6:c712_14(0) <=> c6 gen_c6:c712_14(+(x, 1)) <=> c7(gen_c6:c712_14(x)) gen_c8:c913_14(0) <=> c8 gen_c8:c913_14(+(x, 1)) <=> c9(gen_c8:c913_14(x)) gen_c11:c12:c1314_14(0) <=> hole_c11:c12:c137_14 gen_c11:c12:c1314_14(+(x, 1)) <=> c11(gen_c11:c12:c1314_14(x), c8, c3) The following defined symbols remain to be analysed: -, F, max, min, twice, f They will be analysed ascendingly in the following order: - < F max < F min < F twice < F - < f max < f min < f twice < f ---------------------------------------- (27) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: -(gen_0':s10_14(n2212_14), gen_0':s10_14(n2212_14)) -> gen_0':s10_14(0), rt in Omega(0) Induction Base: -(gen_0':s10_14(0), gen_0':s10_14(0)) ->_R^Omega(0) gen_0':s10_14(0) Induction Step: -(gen_0':s10_14(+(n2212_14, 1)), gen_0':s10_14(+(n2212_14, 1))) ->_R^Omega(0) -(gen_0':s10_14(n2212_14), gen_0':s10_14(n2212_14)) ->_IH gen_0':s10_14(0) We have rt in Omega(1) and sz in O(n). Thus, we have irc_R in Omega(n^0). ---------------------------------------- (28) Obligation: Innermost TRS: Rules: MIN(0', z0) -> c MIN(z0, 0') -> c1 MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(0', z0) -> c3 MAX(z0, 0') -> c4 MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(0') -> c6 TWICE(s(z0)) -> c7(TWICE(z0)) -'(z0, 0') -> c8 -'(s(z0), s(z1)) -> c9(-'(z0, z1)) P(s(z0)) -> c10 F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), P(twice(min(z0, z1))), TWICE(min(z0, z1)), MIN(z0, z1)) min(0', z0) -> 0' min(z0, 0') -> 0' min(s(z0), s(z1)) -> s(min(z0, z1)) max(0', z0) -> z0 max(z0, 0') -> z0 max(s(z0), s(z1)) -> s(max(z0, z1)) twice(0') -> 0' twice(s(z0)) -> s(s(twice(z0))) -(z0, 0') -> z0 -(s(z0), s(z1)) -> -(z0, z1) p(s(z0)) -> z0 f(s(z0), s(z1)) -> f(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))) Types: MIN :: 0':s -> 0':s -> c:c1:c2 0' :: 0':s c :: c:c1:c2 c1 :: c:c1:c2 s :: 0':s -> 0':s c2 :: c:c1:c2 -> c:c1:c2 MAX :: 0':s -> 0':s -> c3:c4:c5 c3 :: c3:c4:c5 c4 :: c3:c4:c5 c5 :: c3:c4:c5 -> c3:c4:c5 TWICE :: 0':s -> c6:c7 c6 :: c6:c7 c7 :: c6:c7 -> c6:c7 -' :: 0':s -> 0':s -> c8:c9 c8 :: c8:c9 c9 :: c8:c9 -> c8:c9 P :: 0':s -> c10 c10 :: c10 F :: 0':s -> 0':s -> c11:c12:c13 c11 :: c11:c12:c13 -> c8:c9 -> c3:c4:c5 -> c11:c12:c13 - :: 0':s -> 0':s -> 0':s max :: 0':s -> 0':s -> 0':s min :: 0':s -> 0':s -> 0':s p :: 0':s -> 0':s twice :: 0':s -> 0':s c12 :: c11:c12:c13 -> c8:c9 -> c:c1:c2 -> c11:c12:c13 c13 :: c11:c12:c13 -> c10 -> c6:c7 -> c:c1:c2 -> c11:c12:c13 f :: 0':s -> 0':s -> f hole_c:c1:c21_14 :: c:c1:c2 hole_0':s2_14 :: 0':s hole_c3:c4:c53_14 :: c3:c4:c5 hole_c6:c74_14 :: c6:c7 hole_c8:c95_14 :: c8:c9 hole_c106_14 :: c10 hole_c11:c12:c137_14 :: c11:c12:c13 hole_f8_14 :: f gen_c:c1:c29_14 :: Nat -> c:c1:c2 gen_0':s10_14 :: Nat -> 0':s gen_c3:c4:c511_14 :: Nat -> c3:c4:c5 gen_c6:c712_14 :: Nat -> c6:c7 gen_c8:c913_14 :: Nat -> c8:c9 gen_c11:c12:c1314_14 :: Nat -> c11:c12:c13 Lemmas: MIN(gen_0':s10_14(n16_14), gen_0':s10_14(n16_14)) -> gen_c:c1:c29_14(n16_14), rt in Omega(1 + n16_14) MAX(gen_0':s10_14(n536_14), gen_0':s10_14(n536_14)) -> gen_c3:c4:c511_14(n536_14), rt in Omega(1 + n536_14) TWICE(gen_0':s10_14(n1131_14)) -> gen_c6:c712_14(n1131_14), rt in Omega(1 + n1131_14) -'(gen_0':s10_14(n1566_14), gen_0':s10_14(n1566_14)) -> gen_c8:c913_14(n1566_14), rt in Omega(1 + n1566_14) -(gen_0':s10_14(n2212_14), gen_0':s10_14(n2212_14)) -> gen_0':s10_14(0), rt in Omega(0) Generator Equations: gen_c:c1:c29_14(0) <=> c gen_c:c1:c29_14(+(x, 1)) <=> c2(gen_c:c1:c29_14(x)) gen_0':s10_14(0) <=> 0' gen_0':s10_14(+(x, 1)) <=> s(gen_0':s10_14(x)) gen_c3:c4:c511_14(0) <=> c3 gen_c3:c4:c511_14(+(x, 1)) <=> c5(gen_c3:c4:c511_14(x)) gen_c6:c712_14(0) <=> c6 gen_c6:c712_14(+(x, 1)) <=> c7(gen_c6:c712_14(x)) gen_c8:c913_14(0) <=> c8 gen_c8:c913_14(+(x, 1)) <=> c9(gen_c8:c913_14(x)) gen_c11:c12:c1314_14(0) <=> hole_c11:c12:c137_14 gen_c11:c12:c1314_14(+(x, 1)) <=> c11(gen_c11:c12:c1314_14(x), c8, c3) The following defined symbols remain to be analysed: max, F, min, twice, f They will be analysed ascendingly in the following order: max < F min < F twice < F max < f min < f twice < f ---------------------------------------- (29) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: max(gen_0':s10_14(n3084_14), gen_0':s10_14(n3084_14)) -> gen_0':s10_14(n3084_14), rt in Omega(0) Induction Base: max(gen_0':s10_14(0), gen_0':s10_14(0)) ->_R^Omega(0) gen_0':s10_14(0) Induction Step: max(gen_0':s10_14(+(n3084_14, 1)), gen_0':s10_14(+(n3084_14, 1))) ->_R^Omega(0) s(max(gen_0':s10_14(n3084_14), gen_0':s10_14(n3084_14))) ->_IH s(gen_0':s10_14(c3085_14)) We have rt in Omega(1) and sz in O(n). Thus, we have irc_R in Omega(n^0). ---------------------------------------- (30) Obligation: Innermost TRS: Rules: MIN(0', z0) -> c MIN(z0, 0') -> c1 MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(0', z0) -> c3 MAX(z0, 0') -> c4 MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(0') -> c6 TWICE(s(z0)) -> c7(TWICE(z0)) -'(z0, 0') -> c8 -'(s(z0), s(z1)) -> c9(-'(z0, z1)) P(s(z0)) -> c10 F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), P(twice(min(z0, z1))), TWICE(min(z0, z1)), MIN(z0, z1)) min(0', z0) -> 0' min(z0, 0') -> 0' min(s(z0), s(z1)) -> s(min(z0, z1)) max(0', z0) -> z0 max(z0, 0') -> z0 max(s(z0), s(z1)) -> s(max(z0, z1)) twice(0') -> 0' twice(s(z0)) -> s(s(twice(z0))) -(z0, 0') -> z0 -(s(z0), s(z1)) -> -(z0, z1) p(s(z0)) -> z0 f(s(z0), s(z1)) -> f(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))) Types: MIN :: 0':s -> 0':s -> c:c1:c2 0' :: 0':s c :: c:c1:c2 c1 :: c:c1:c2 s :: 0':s -> 0':s c2 :: c:c1:c2 -> c:c1:c2 MAX :: 0':s -> 0':s -> c3:c4:c5 c3 :: c3:c4:c5 c4 :: c3:c4:c5 c5 :: c3:c4:c5 -> c3:c4:c5 TWICE :: 0':s -> c6:c7 c6 :: c6:c7 c7 :: c6:c7 -> c6:c7 -' :: 0':s -> 0':s -> c8:c9 c8 :: c8:c9 c9 :: c8:c9 -> c8:c9 P :: 0':s -> c10 c10 :: c10 F :: 0':s -> 0':s -> c11:c12:c13 c11 :: c11:c12:c13 -> c8:c9 -> c3:c4:c5 -> c11:c12:c13 - :: 0':s -> 0':s -> 0':s max :: 0':s -> 0':s -> 0':s min :: 0':s -> 0':s -> 0':s p :: 0':s -> 0':s twice :: 0':s -> 0':s c12 :: c11:c12:c13 -> c8:c9 -> c:c1:c2 -> c11:c12:c13 c13 :: c11:c12:c13 -> c10 -> c6:c7 -> c:c1:c2 -> c11:c12:c13 f :: 0':s -> 0':s -> f hole_c:c1:c21_14 :: c:c1:c2 hole_0':s2_14 :: 0':s hole_c3:c4:c53_14 :: c3:c4:c5 hole_c6:c74_14 :: c6:c7 hole_c8:c95_14 :: c8:c9 hole_c106_14 :: c10 hole_c11:c12:c137_14 :: c11:c12:c13 hole_f8_14 :: f gen_c:c1:c29_14 :: Nat -> c:c1:c2 gen_0':s10_14 :: Nat -> 0':s gen_c3:c4:c511_14 :: Nat -> c3:c4:c5 gen_c6:c712_14 :: Nat -> c6:c7 gen_c8:c913_14 :: Nat -> c8:c9 gen_c11:c12:c1314_14 :: Nat -> c11:c12:c13 Lemmas: MIN(gen_0':s10_14(n16_14), gen_0':s10_14(n16_14)) -> gen_c:c1:c29_14(n16_14), rt in Omega(1 + n16_14) MAX(gen_0':s10_14(n536_14), gen_0':s10_14(n536_14)) -> gen_c3:c4:c511_14(n536_14), rt in Omega(1 + n536_14) TWICE(gen_0':s10_14(n1131_14)) -> gen_c6:c712_14(n1131_14), rt in Omega(1 + n1131_14) -'(gen_0':s10_14(n1566_14), gen_0':s10_14(n1566_14)) -> gen_c8:c913_14(n1566_14), rt in Omega(1 + n1566_14) -(gen_0':s10_14(n2212_14), gen_0':s10_14(n2212_14)) -> gen_0':s10_14(0), rt in Omega(0) max(gen_0':s10_14(n3084_14), gen_0':s10_14(n3084_14)) -> gen_0':s10_14(n3084_14), rt in Omega(0) Generator Equations: gen_c:c1:c29_14(0) <=> c gen_c:c1:c29_14(+(x, 1)) <=> c2(gen_c:c1:c29_14(x)) gen_0':s10_14(0) <=> 0' gen_0':s10_14(+(x, 1)) <=> s(gen_0':s10_14(x)) gen_c3:c4:c511_14(0) <=> c3 gen_c3:c4:c511_14(+(x, 1)) <=> c5(gen_c3:c4:c511_14(x)) gen_c6:c712_14(0) <=> c6 gen_c6:c712_14(+(x, 1)) <=> c7(gen_c6:c712_14(x)) gen_c8:c913_14(0) <=> c8 gen_c8:c913_14(+(x, 1)) <=> c9(gen_c8:c913_14(x)) gen_c11:c12:c1314_14(0) <=> hole_c11:c12:c137_14 gen_c11:c12:c1314_14(+(x, 1)) <=> c11(gen_c11:c12:c1314_14(x), c8, c3) The following defined symbols remain to be analysed: min, F, twice, f They will be analysed ascendingly in the following order: min < F twice < F min < f twice < f ---------------------------------------- (31) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: min(gen_0':s10_14(n4006_14), gen_0':s10_14(n4006_14)) -> gen_0':s10_14(n4006_14), rt in Omega(0) Induction Base: min(gen_0':s10_14(0), gen_0':s10_14(0)) ->_R^Omega(0) 0' Induction Step: min(gen_0':s10_14(+(n4006_14, 1)), gen_0':s10_14(+(n4006_14, 1))) ->_R^Omega(0) s(min(gen_0':s10_14(n4006_14), gen_0':s10_14(n4006_14))) ->_IH s(gen_0':s10_14(c4007_14)) We have rt in Omega(1) and sz in O(n). Thus, we have irc_R in Omega(n^0). ---------------------------------------- (32) Obligation: Innermost TRS: Rules: MIN(0', z0) -> c MIN(z0, 0') -> c1 MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(0', z0) -> c3 MAX(z0, 0') -> c4 MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(0') -> c6 TWICE(s(z0)) -> c7(TWICE(z0)) -'(z0, 0') -> c8 -'(s(z0), s(z1)) -> c9(-'(z0, z1)) P(s(z0)) -> c10 F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), P(twice(min(z0, z1))), TWICE(min(z0, z1)), MIN(z0, z1)) min(0', z0) -> 0' min(z0, 0') -> 0' min(s(z0), s(z1)) -> s(min(z0, z1)) max(0', z0) -> z0 max(z0, 0') -> z0 max(s(z0), s(z1)) -> s(max(z0, z1)) twice(0') -> 0' twice(s(z0)) -> s(s(twice(z0))) -(z0, 0') -> z0 -(s(z0), s(z1)) -> -(z0, z1) p(s(z0)) -> z0 f(s(z0), s(z1)) -> f(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))) Types: MIN :: 0':s -> 0':s -> c:c1:c2 0' :: 0':s c :: c:c1:c2 c1 :: c:c1:c2 s :: 0':s -> 0':s c2 :: c:c1:c2 -> c:c1:c2 MAX :: 0':s -> 0':s -> c3:c4:c5 c3 :: c3:c4:c5 c4 :: c3:c4:c5 c5 :: c3:c4:c5 -> c3:c4:c5 TWICE :: 0':s -> c6:c7 c6 :: c6:c7 c7 :: c6:c7 -> c6:c7 -' :: 0':s -> 0':s -> c8:c9 c8 :: c8:c9 c9 :: c8:c9 -> c8:c9 P :: 0':s -> c10 c10 :: c10 F :: 0':s -> 0':s -> c11:c12:c13 c11 :: c11:c12:c13 -> c8:c9 -> c3:c4:c5 -> c11:c12:c13 - :: 0':s -> 0':s -> 0':s max :: 0':s -> 0':s -> 0':s min :: 0':s -> 0':s -> 0':s p :: 0':s -> 0':s twice :: 0':s -> 0':s c12 :: c11:c12:c13 -> c8:c9 -> c:c1:c2 -> c11:c12:c13 c13 :: c11:c12:c13 -> c10 -> c6:c7 -> c:c1:c2 -> c11:c12:c13 f :: 0':s -> 0':s -> f hole_c:c1:c21_14 :: c:c1:c2 hole_0':s2_14 :: 0':s hole_c3:c4:c53_14 :: c3:c4:c5 hole_c6:c74_14 :: c6:c7 hole_c8:c95_14 :: c8:c9 hole_c106_14 :: c10 hole_c11:c12:c137_14 :: c11:c12:c13 hole_f8_14 :: f gen_c:c1:c29_14 :: Nat -> c:c1:c2 gen_0':s10_14 :: Nat -> 0':s gen_c3:c4:c511_14 :: Nat -> c3:c4:c5 gen_c6:c712_14 :: Nat -> c6:c7 gen_c8:c913_14 :: Nat -> c8:c9 gen_c11:c12:c1314_14 :: Nat -> c11:c12:c13 Lemmas: MIN(gen_0':s10_14(n16_14), gen_0':s10_14(n16_14)) -> gen_c:c1:c29_14(n16_14), rt in Omega(1 + n16_14) MAX(gen_0':s10_14(n536_14), gen_0':s10_14(n536_14)) -> gen_c3:c4:c511_14(n536_14), rt in Omega(1 + n536_14) TWICE(gen_0':s10_14(n1131_14)) -> gen_c6:c712_14(n1131_14), rt in Omega(1 + n1131_14) -'(gen_0':s10_14(n1566_14), gen_0':s10_14(n1566_14)) -> gen_c8:c913_14(n1566_14), rt in Omega(1 + n1566_14) -(gen_0':s10_14(n2212_14), gen_0':s10_14(n2212_14)) -> gen_0':s10_14(0), rt in Omega(0) max(gen_0':s10_14(n3084_14), gen_0':s10_14(n3084_14)) -> gen_0':s10_14(n3084_14), rt in Omega(0) min(gen_0':s10_14(n4006_14), gen_0':s10_14(n4006_14)) -> gen_0':s10_14(n4006_14), rt in Omega(0) Generator Equations: gen_c:c1:c29_14(0) <=> c gen_c:c1:c29_14(+(x, 1)) <=> c2(gen_c:c1:c29_14(x)) gen_0':s10_14(0) <=> 0' gen_0':s10_14(+(x, 1)) <=> s(gen_0':s10_14(x)) gen_c3:c4:c511_14(0) <=> c3 gen_c3:c4:c511_14(+(x, 1)) <=> c5(gen_c3:c4:c511_14(x)) gen_c6:c712_14(0) <=> c6 gen_c6:c712_14(+(x, 1)) <=> c7(gen_c6:c712_14(x)) gen_c8:c913_14(0) <=> c8 gen_c8:c913_14(+(x, 1)) <=> c9(gen_c8:c913_14(x)) gen_c11:c12:c1314_14(0) <=> hole_c11:c12:c137_14 gen_c11:c12:c1314_14(+(x, 1)) <=> c11(gen_c11:c12:c1314_14(x), c8, c3) The following defined symbols remain to be analysed: twice, F, f They will be analysed ascendingly in the following order: twice < F twice < f ---------------------------------------- (33) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: twice(gen_0':s10_14(n4610_14)) -> gen_0':s10_14(*(2, n4610_14)), rt in Omega(0) Induction Base: twice(gen_0':s10_14(0)) ->_R^Omega(0) 0' Induction Step: twice(gen_0':s10_14(+(n4610_14, 1))) ->_R^Omega(0) s(s(twice(gen_0':s10_14(n4610_14)))) ->_IH s(s(gen_0':s10_14(*(2, c4611_14)))) We have rt in Omega(1) and sz in O(n). Thus, we have irc_R in Omega(n^0). ---------------------------------------- (34) Obligation: Innermost TRS: Rules: MIN(0', z0) -> c MIN(z0, 0') -> c1 MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(0', z0) -> c3 MAX(z0, 0') -> c4 MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(0') -> c6 TWICE(s(z0)) -> c7(TWICE(z0)) -'(z0, 0') -> c8 -'(s(z0), s(z1)) -> c9(-'(z0, z1)) P(s(z0)) -> c10 F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), P(twice(min(z0, z1))), TWICE(min(z0, z1)), MIN(z0, z1)) min(0', z0) -> 0' min(z0, 0') -> 0' min(s(z0), s(z1)) -> s(min(z0, z1)) max(0', z0) -> z0 max(z0, 0') -> z0 max(s(z0), s(z1)) -> s(max(z0, z1)) twice(0') -> 0' twice(s(z0)) -> s(s(twice(z0))) -(z0, 0') -> z0 -(s(z0), s(z1)) -> -(z0, z1) p(s(z0)) -> z0 f(s(z0), s(z1)) -> f(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))) Types: MIN :: 0':s -> 0':s -> c:c1:c2 0' :: 0':s c :: c:c1:c2 c1 :: c:c1:c2 s :: 0':s -> 0':s c2 :: c:c1:c2 -> c:c1:c2 MAX :: 0':s -> 0':s -> c3:c4:c5 c3 :: c3:c4:c5 c4 :: c3:c4:c5 c5 :: c3:c4:c5 -> c3:c4:c5 TWICE :: 0':s -> c6:c7 c6 :: c6:c7 c7 :: c6:c7 -> c6:c7 -' :: 0':s -> 0':s -> c8:c9 c8 :: c8:c9 c9 :: c8:c9 -> c8:c9 P :: 0':s -> c10 c10 :: c10 F :: 0':s -> 0':s -> c11:c12:c13 c11 :: c11:c12:c13 -> c8:c9 -> c3:c4:c5 -> c11:c12:c13 - :: 0':s -> 0':s -> 0':s max :: 0':s -> 0':s -> 0':s min :: 0':s -> 0':s -> 0':s p :: 0':s -> 0':s twice :: 0':s -> 0':s c12 :: c11:c12:c13 -> c8:c9 -> c:c1:c2 -> c11:c12:c13 c13 :: c11:c12:c13 -> c10 -> c6:c7 -> c:c1:c2 -> c11:c12:c13 f :: 0':s -> 0':s -> f hole_c:c1:c21_14 :: c:c1:c2 hole_0':s2_14 :: 0':s hole_c3:c4:c53_14 :: c3:c4:c5 hole_c6:c74_14 :: c6:c7 hole_c8:c95_14 :: c8:c9 hole_c106_14 :: c10 hole_c11:c12:c137_14 :: c11:c12:c13 hole_f8_14 :: f gen_c:c1:c29_14 :: Nat -> c:c1:c2 gen_0':s10_14 :: Nat -> 0':s gen_c3:c4:c511_14 :: Nat -> c3:c4:c5 gen_c6:c712_14 :: Nat -> c6:c7 gen_c8:c913_14 :: Nat -> c8:c9 gen_c11:c12:c1314_14 :: Nat -> c11:c12:c13 Lemmas: MIN(gen_0':s10_14(n16_14), gen_0':s10_14(n16_14)) -> gen_c:c1:c29_14(n16_14), rt in Omega(1 + n16_14) MAX(gen_0':s10_14(n536_14), gen_0':s10_14(n536_14)) -> gen_c3:c4:c511_14(n536_14), rt in Omega(1 + n536_14) TWICE(gen_0':s10_14(n1131_14)) -> gen_c6:c712_14(n1131_14), rt in Omega(1 + n1131_14) -'(gen_0':s10_14(n1566_14), gen_0':s10_14(n1566_14)) -> gen_c8:c913_14(n1566_14), rt in Omega(1 + n1566_14) -(gen_0':s10_14(n2212_14), gen_0':s10_14(n2212_14)) -> gen_0':s10_14(0), rt in Omega(0) max(gen_0':s10_14(n3084_14), gen_0':s10_14(n3084_14)) -> gen_0':s10_14(n3084_14), rt in Omega(0) min(gen_0':s10_14(n4006_14), gen_0':s10_14(n4006_14)) -> gen_0':s10_14(n4006_14), rt in Omega(0) twice(gen_0':s10_14(n4610_14)) -> gen_0':s10_14(*(2, n4610_14)), rt in Omega(0) Generator Equations: gen_c:c1:c29_14(0) <=> c gen_c:c1:c29_14(+(x, 1)) <=> c2(gen_c:c1:c29_14(x)) gen_0':s10_14(0) <=> 0' gen_0':s10_14(+(x, 1)) <=> s(gen_0':s10_14(x)) gen_c3:c4:c511_14(0) <=> c3 gen_c3:c4:c511_14(+(x, 1)) <=> c5(gen_c3:c4:c511_14(x)) gen_c6:c712_14(0) <=> c6 gen_c6:c712_14(+(x, 1)) <=> c7(gen_c6:c712_14(x)) gen_c8:c913_14(0) <=> c8 gen_c8:c913_14(+(x, 1)) <=> c9(gen_c8:c913_14(x)) gen_c11:c12:c1314_14(0) <=> hole_c11:c12:c137_14 gen_c11:c12:c1314_14(+(x, 1)) <=> c11(gen_c11:c12:c1314_14(x), c8, c3) The following defined symbols remain to be analysed: F, f ---------------------------------------- (35) RelTrsToWeightedTrsProof (UPPER BOUND(ID)) Transformed relative TRS to weighted TRS ---------------------------------------- (36) 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: min(0, y) -> 0 [1] min(x, 0) -> 0 [1] min(s(x), s(y)) -> s(min(x, y)) [1] max(0, y) -> y [1] max(x, 0) -> x [1] max(s(x), s(y)) -> s(max(x, y)) [1] twice(0) -> 0 [1] twice(s(x)) -> s(s(twice(x))) [1] -(x, 0) -> x [1] -(s(x), s(y)) -> -(x, y) [1] p(s(x)) -> x [1] f(s(x), s(y)) -> f(-(max(s(x), s(y)), min(s(x), s(y))), p(twice(min(x, y)))) [1] Rewrite Strategy: INNERMOST ---------------------------------------- (37) CpxWeightedTrsRenamingProof (BOTH BOUNDS(ID, ID)) Renamed defined symbols to avoid conflicts with arithmetic symbols: - => minus ---------------------------------------- (38) Obligation: The Runtime Complexity (innermost) of the given CpxWeightedTrs could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: min(0, y) -> 0 [1] min(x, 0) -> 0 [1] min(s(x), s(y)) -> s(min(x, y)) [1] max(0, y) -> y [1] max(x, 0) -> x [1] max(s(x), s(y)) -> s(max(x, y)) [1] twice(0) -> 0 [1] twice(s(x)) -> s(s(twice(x))) [1] minus(x, 0) -> x [1] minus(s(x), s(y)) -> minus(x, y) [1] p(s(x)) -> x [1] f(s(x), s(y)) -> f(minus(max(s(x), s(y)), min(s(x), s(y))), p(twice(min(x, y)))) [1] Rewrite Strategy: INNERMOST ---------------------------------------- (39) TypeInferenceProof (BOTH BOUNDS(ID, ID)) Infered types. ---------------------------------------- (40) Obligation: Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules: min(0, y) -> 0 [1] min(x, 0) -> 0 [1] min(s(x), s(y)) -> s(min(x, y)) [1] max(0, y) -> y [1] max(x, 0) -> x [1] max(s(x), s(y)) -> s(max(x, y)) [1] twice(0) -> 0 [1] twice(s(x)) -> s(s(twice(x))) [1] minus(x, 0) -> x [1] minus(s(x), s(y)) -> minus(x, y) [1] p(s(x)) -> x [1] f(s(x), s(y)) -> f(minus(max(s(x), s(y)), min(s(x), s(y))), p(twice(min(x, y)))) [1] The TRS has the following type information: min :: 0:s -> 0:s -> 0:s 0 :: 0:s s :: 0:s -> 0:s max :: 0:s -> 0:s -> 0:s twice :: 0:s -> 0:s minus :: 0:s -> 0:s -> 0:s p :: 0:s -> 0:s f :: 0:s -> 0:s -> f Rewrite Strategy: INNERMOST ---------------------------------------- (41) CompletionProof (UPPER BOUND(ID)) The transformation into a RNTS is sound, since: (a) The obligation is a constructor system where every type has a constant constructor, (b) The following defined symbols do not have to be completely defined, as they can never occur inside other defined symbols: f_2 (c) The following functions are completely defined: minus_2 max_2 min_2 p_1 twice_1 Due to the following rules being added: minus(v0, v1) -> 0 [0] p(v0) -> 0 [0] And the following fresh constants: const ---------------------------------------- (42) Obligation: Runtime Complexity Weighted TRS where critical functions are completely defined. The underlying TRS is: Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules: min(0, y) -> 0 [1] min(x, 0) -> 0 [1] min(s(x), s(y)) -> s(min(x, y)) [1] max(0, y) -> y [1] max(x, 0) -> x [1] max(s(x), s(y)) -> s(max(x, y)) [1] twice(0) -> 0 [1] twice(s(x)) -> s(s(twice(x))) [1] minus(x, 0) -> x [1] minus(s(x), s(y)) -> minus(x, y) [1] p(s(x)) -> x [1] f(s(x), s(y)) -> f(minus(max(s(x), s(y)), min(s(x), s(y))), p(twice(min(x, y)))) [1] minus(v0, v1) -> 0 [0] p(v0) -> 0 [0] The TRS has the following type information: min :: 0:s -> 0:s -> 0:s 0 :: 0:s s :: 0:s -> 0:s max :: 0:s -> 0:s -> 0:s twice :: 0:s -> 0:s minus :: 0:s -> 0:s -> 0:s p :: 0:s -> 0:s f :: 0:s -> 0:s -> f const :: f Rewrite Strategy: INNERMOST ---------------------------------------- (43) NarrowingProof (BOTH BOUNDS(ID, ID)) Narrowed the inner basic terms of all right-hand sides by a single narrowing step. ---------------------------------------- (44) Obligation: Runtime Complexity Weighted TRS where critical functions are completely defined. The underlying TRS is: Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules: min(0, y) -> 0 [1] min(x, 0) -> 0 [1] min(s(x), s(y)) -> s(min(x, y)) [1] max(0, y) -> y [1] max(x, 0) -> x [1] max(s(x), s(y)) -> s(max(x, y)) [1] twice(0) -> 0 [1] twice(s(x)) -> s(s(twice(x))) [1] minus(x, 0) -> x [1] minus(s(x), s(y)) -> minus(x, y) [1] p(s(x)) -> x [1] f(s(0), s(y)) -> f(minus(s(max(0, y)), s(min(0, y))), p(twice(0))) [4] f(s(x), s(0)) -> f(minus(s(max(x, 0)), s(min(x, 0))), p(twice(0))) [4] f(s(s(x')), s(s(y'))) -> f(minus(s(max(s(x'), s(y'))), s(min(s(x'), s(y')))), p(twice(s(min(x', y'))))) [4] minus(v0, v1) -> 0 [0] p(v0) -> 0 [0] The TRS has the following type information: min :: 0:s -> 0:s -> 0:s 0 :: 0:s s :: 0:s -> 0:s max :: 0:s -> 0:s -> 0:s twice :: 0:s -> 0:s minus :: 0:s -> 0:s -> 0:s p :: 0:s -> 0:s f :: 0:s -> 0:s -> f const :: f Rewrite Strategy: INNERMOST ---------------------------------------- (45) CpxTypedWeightedTrsToRntsProof (UPPER BOUND(ID)) Transformed the TRS into an over-approximating RNTS by (improved) Size Abstraction. The constant constructors are abstracted as follows: 0 => 0 const => 0 ---------------------------------------- (46) Obligation: Complexity RNTS consisting of the following rules: f(z, z') -{ 4 }-> f(minus(1 + max(x, 0), 1 + min(x, 0)), p(twice(0))) :|: x >= 0, z' = 1 + 0, z = 1 + x f(z, z') -{ 4 }-> f(minus(1 + max(0, y), 1 + min(0, y)), p(twice(0))) :|: z' = 1 + y, z = 1 + 0, y >= 0 f(z, z') -{ 4 }-> f(minus(1 + max(1 + x', 1 + y'), 1 + min(1 + x', 1 + y')), p(twice(1 + min(x', y')))) :|: z' = 1 + (1 + y'), x' >= 0, y' >= 0, z = 1 + (1 + x') max(z, z') -{ 1 }-> x :|: x >= 0, z = x, z' = 0 max(z, z') -{ 1 }-> y :|: y >= 0, z = 0, z' = y max(z, z') -{ 1 }-> 1 + max(x, y) :|: z' = 1 + y, x >= 0, y >= 0, z = 1 + x min(z, z') -{ 1 }-> 0 :|: y >= 0, z = 0, z' = y min(z, z') -{ 1 }-> 0 :|: x >= 0, z = x, z' = 0 min(z, z') -{ 1 }-> 1 + min(x, y) :|: z' = 1 + y, x >= 0, y >= 0, z = 1 + x minus(z, z') -{ 1 }-> x :|: x >= 0, z = x, z' = 0 minus(z, z') -{ 1 }-> minus(x, y) :|: z' = 1 + y, x >= 0, y >= 0, z = 1 + x minus(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 p(z) -{ 1 }-> x :|: x >= 0, z = 1 + x p(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 twice(z) -{ 1 }-> 0 :|: z = 0 twice(z) -{ 1 }-> 1 + (1 + twice(x)) :|: x >= 0, z = 1 + x ---------------------------------------- (47) InliningProof (UPPER BOUND(ID)) Inlined the following terminating rules on right-hand sides where appropriate: p(z) -{ 1 }-> x :|: x >= 0, z = 1 + x p(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 ---------------------------------------- (48) Obligation: Complexity RNTS consisting of the following rules: f(z, z') -{ 4 }-> f(minus(1 + max(x, 0), 1 + min(x, 0)), p(twice(0))) :|: x >= 0, z' = 1 + 0, z = 1 + x f(z, z') -{ 4 }-> f(minus(1 + max(0, y), 1 + min(0, y)), p(twice(0))) :|: z' = 1 + y, z = 1 + 0, y >= 0 f(z, z') -{ 4 }-> f(minus(1 + max(1 + x', 1 + y'), 1 + min(1 + x', 1 + y')), p(twice(1 + min(x', y')))) :|: z' = 1 + (1 + y'), x' >= 0, y' >= 0, z = 1 + (1 + x') max(z, z') -{ 1 }-> x :|: x >= 0, z = x, z' = 0 max(z, z') -{ 1 }-> y :|: y >= 0, z = 0, z' = y max(z, z') -{ 1 }-> 1 + max(x, y) :|: z' = 1 + y, x >= 0, y >= 0, z = 1 + x min(z, z') -{ 1 }-> 0 :|: y >= 0, z = 0, z' = y min(z, z') -{ 1 }-> 0 :|: x >= 0, z = x, z' = 0 min(z, z') -{ 1 }-> 1 + min(x, y) :|: z' = 1 + y, x >= 0, y >= 0, z = 1 + x minus(z, z') -{ 1 }-> x :|: x >= 0, z = x, z' = 0 minus(z, z') -{ 1 }-> minus(x, y) :|: z' = 1 + y, x >= 0, y >= 0, z = 1 + x minus(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 p(z) -{ 1 }-> x :|: x >= 0, z = 1 + x p(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 twice(z) -{ 1 }-> 0 :|: z = 0 twice(z) -{ 1 }-> 1 + (1 + twice(x)) :|: x >= 0, z = 1 + x ---------------------------------------- (49) SimplificationProof (BOTH BOUNDS(ID, ID)) Simplified the RNTS by moving equalities from the constraints into the right-hand sides. ---------------------------------------- (50) Obligation: Complexity RNTS consisting of the following rules: f(z, z') -{ 4 }-> f(minus(1 + max(0, z' - 1), 1 + min(0, z' - 1)), p(twice(0))) :|: z = 1 + 0, z' - 1 >= 0 f(z, z') -{ 4 }-> f(minus(1 + max(z - 1, 0), 1 + min(z - 1, 0)), p(twice(0))) :|: z - 1 >= 0, z' = 1 + 0 f(z, z') -{ 4 }-> f(minus(1 + max(1 + (z - 2), 1 + (z' - 2)), 1 + min(1 + (z - 2), 1 + (z' - 2))), p(twice(1 + min(z - 2, z' - 2)))) :|: z - 2 >= 0, z' - 2 >= 0 max(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 1 }-> 1 + max(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 min(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 1 }-> 1 + min(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 1 }-> minus(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 1 }-> 0 :|: z = 0 twice(z) -{ 1 }-> 1 + (1 + twice(z - 1)) :|: z - 1 >= 0 ---------------------------------------- (51) CpxRntsAnalysisOrderProof (BOTH BOUNDS(ID, ID)) Found the following analysis order by SCC decomposition: { twice } { max } { minus } { min } { p } { f } ---------------------------------------- (52) Obligation: Complexity RNTS consisting of the following rules: f(z, z') -{ 4 }-> f(minus(1 + max(0, z' - 1), 1 + min(0, z' - 1)), p(twice(0))) :|: z = 1 + 0, z' - 1 >= 0 f(z, z') -{ 4 }-> f(minus(1 + max(z - 1, 0), 1 + min(z - 1, 0)), p(twice(0))) :|: z - 1 >= 0, z' = 1 + 0 f(z, z') -{ 4 }-> f(minus(1 + max(1 + (z - 2), 1 + (z' - 2)), 1 + min(1 + (z - 2), 1 + (z' - 2))), p(twice(1 + min(z - 2, z' - 2)))) :|: z - 2 >= 0, z' - 2 >= 0 max(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 1 }-> 1 + max(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 min(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 1 }-> 1 + min(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 1 }-> minus(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 1 }-> 0 :|: z = 0 twice(z) -{ 1 }-> 1 + (1 + twice(z - 1)) :|: z - 1 >= 0 Function symbols to be analyzed: {twice}, {max}, {minus}, {min}, {p}, {f} ---------------------------------------- (53) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (54) Obligation: Complexity RNTS consisting of the following rules: f(z, z') -{ 4 }-> f(minus(1 + max(0, z' - 1), 1 + min(0, z' - 1)), p(twice(0))) :|: z = 1 + 0, z' - 1 >= 0 f(z, z') -{ 4 }-> f(minus(1 + max(z - 1, 0), 1 + min(z - 1, 0)), p(twice(0))) :|: z - 1 >= 0, z' = 1 + 0 f(z, z') -{ 4 }-> f(minus(1 + max(1 + (z - 2), 1 + (z' - 2)), 1 + min(1 + (z - 2), 1 + (z' - 2))), p(twice(1 + min(z - 2, z' - 2)))) :|: z - 2 >= 0, z' - 2 >= 0 max(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 1 }-> 1 + max(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 min(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 1 }-> 1 + min(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 1 }-> minus(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 1 }-> 0 :|: z = 0 twice(z) -{ 1 }-> 1 + (1 + twice(z - 1)) :|: z - 1 >= 0 Function symbols to be analyzed: {twice}, {max}, {minus}, {min}, {p}, {f} ---------------------------------------- (55) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: twice after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 2*z ---------------------------------------- (56) Obligation: Complexity RNTS consisting of the following rules: f(z, z') -{ 4 }-> f(minus(1 + max(0, z' - 1), 1 + min(0, z' - 1)), p(twice(0))) :|: z = 1 + 0, z' - 1 >= 0 f(z, z') -{ 4 }-> f(minus(1 + max(z - 1, 0), 1 + min(z - 1, 0)), p(twice(0))) :|: z - 1 >= 0, z' = 1 + 0 f(z, z') -{ 4 }-> f(minus(1 + max(1 + (z - 2), 1 + (z' - 2)), 1 + min(1 + (z - 2), 1 + (z' - 2))), p(twice(1 + min(z - 2, z' - 2)))) :|: z - 2 >= 0, z' - 2 >= 0 max(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 1 }-> 1 + max(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 min(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 1 }-> 1 + min(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 1 }-> minus(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 1 }-> 0 :|: z = 0 twice(z) -{ 1 }-> 1 + (1 + twice(z - 1)) :|: z - 1 >= 0 Function symbols to be analyzed: {twice}, {max}, {minus}, {min}, {p}, {f} Previous analysis results are: twice: runtime: ?, size: O(n^1) [2*z] ---------------------------------------- (57) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: twice after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 1 + z ---------------------------------------- (58) Obligation: Complexity RNTS consisting of the following rules: f(z, z') -{ 4 }-> f(minus(1 + max(0, z' - 1), 1 + min(0, z' - 1)), p(twice(0))) :|: z = 1 + 0, z' - 1 >= 0 f(z, z') -{ 4 }-> f(minus(1 + max(z - 1, 0), 1 + min(z - 1, 0)), p(twice(0))) :|: z - 1 >= 0, z' = 1 + 0 f(z, z') -{ 4 }-> f(minus(1 + max(1 + (z - 2), 1 + (z' - 2)), 1 + min(1 + (z - 2), 1 + (z' - 2))), p(twice(1 + min(z - 2, z' - 2)))) :|: z - 2 >= 0, z' - 2 >= 0 max(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 1 }-> 1 + max(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 min(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 1 }-> 1 + min(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 1 }-> minus(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 1 }-> 0 :|: z = 0 twice(z) -{ 1 }-> 1 + (1 + twice(z - 1)) :|: z - 1 >= 0 Function symbols to be analyzed: {max}, {minus}, {min}, {p}, {f} Previous analysis results are: twice: runtime: O(n^1) [1 + z], size: O(n^1) [2*z] ---------------------------------------- (59) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (60) Obligation: Complexity RNTS consisting of the following rules: f(z, z') -{ 5 }-> f(minus(1 + max(0, z' - 1), 1 + min(0, z' - 1)), p(s')) :|: s' >= 0, s' <= 2 * 0, z = 1 + 0, z' - 1 >= 0 f(z, z') -{ 5 }-> f(minus(1 + max(z - 1, 0), 1 + min(z - 1, 0)), p(s'')) :|: s'' >= 0, s'' <= 2 * 0, z - 1 >= 0, z' = 1 + 0 f(z, z') -{ 4 }-> f(minus(1 + max(1 + (z - 2), 1 + (z' - 2)), 1 + min(1 + (z - 2), 1 + (z' - 2))), p(twice(1 + min(z - 2, z' - 2)))) :|: z - 2 >= 0, z' - 2 >= 0 max(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 1 }-> 1 + max(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 min(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 1 }-> 1 + min(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 1 }-> minus(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 1 }-> 0 :|: z = 0 twice(z) -{ 1 + z }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {max}, {minus}, {min}, {p}, {f} Previous analysis results are: twice: runtime: O(n^1) [1 + z], size: O(n^1) [2*z] ---------------------------------------- (61) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: max after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: z + z' ---------------------------------------- (62) Obligation: Complexity RNTS consisting of the following rules: f(z, z') -{ 5 }-> f(minus(1 + max(0, z' - 1), 1 + min(0, z' - 1)), p(s')) :|: s' >= 0, s' <= 2 * 0, z = 1 + 0, z' - 1 >= 0 f(z, z') -{ 5 }-> f(minus(1 + max(z - 1, 0), 1 + min(z - 1, 0)), p(s'')) :|: s'' >= 0, s'' <= 2 * 0, z - 1 >= 0, z' = 1 + 0 f(z, z') -{ 4 }-> f(minus(1 + max(1 + (z - 2), 1 + (z' - 2)), 1 + min(1 + (z - 2), 1 + (z' - 2))), p(twice(1 + min(z - 2, z' - 2)))) :|: z - 2 >= 0, z' - 2 >= 0 max(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 1 }-> 1 + max(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 min(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 1 }-> 1 + min(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 1 }-> minus(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 1 }-> 0 :|: z = 0 twice(z) -{ 1 + z }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {max}, {minus}, {min}, {p}, {f} Previous analysis results are: twice: runtime: O(n^1) [1 + z], size: O(n^1) [2*z] max: runtime: ?, size: O(n^1) [z + z'] ---------------------------------------- (63) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using KoAT for: max after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 2 + z' ---------------------------------------- (64) Obligation: Complexity RNTS consisting of the following rules: f(z, z') -{ 5 }-> f(minus(1 + max(0, z' - 1), 1 + min(0, z' - 1)), p(s')) :|: s' >= 0, s' <= 2 * 0, z = 1 + 0, z' - 1 >= 0 f(z, z') -{ 5 }-> f(minus(1 + max(z - 1, 0), 1 + min(z - 1, 0)), p(s'')) :|: s'' >= 0, s'' <= 2 * 0, z - 1 >= 0, z' = 1 + 0 f(z, z') -{ 4 }-> f(minus(1 + max(1 + (z - 2), 1 + (z' - 2)), 1 + min(1 + (z - 2), 1 + (z' - 2))), p(twice(1 + min(z - 2, z' - 2)))) :|: z - 2 >= 0, z' - 2 >= 0 max(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 1 }-> 1 + max(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 min(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 1 }-> 1 + min(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 1 }-> minus(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 1 }-> 0 :|: z = 0 twice(z) -{ 1 + z }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {minus}, {min}, {p}, {f} Previous analysis results are: twice: runtime: O(n^1) [1 + z], size: O(n^1) [2*z] max: runtime: O(n^1) [2 + z'], size: O(n^1) [z + z'] ---------------------------------------- (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: f(z, z') -{ 6 + z' }-> f(minus(1 + s2, 1 + min(0, z' - 1)), p(s')) :|: s2 >= 0, s2 <= z' - 1 + 0, s' >= 0, s' <= 2 * 0, z = 1 + 0, z' - 1 >= 0 f(z, z') -{ 7 }-> f(minus(1 + s3, 1 + min(z - 1, 0)), p(s'')) :|: s3 >= 0, s3 <= 0 + (z - 1), s'' >= 0, s'' <= 2 * 0, z - 1 >= 0, z' = 1 + 0 f(z, z') -{ 5 + z' }-> f(minus(1 + s4, 1 + min(1 + (z - 2), 1 + (z' - 2))), p(twice(1 + min(z - 2, z' - 2)))) :|: s4 >= 0, s4 <= 1 + (z' - 2) + (1 + (z - 2)), z - 2 >= 0, z' - 2 >= 0 max(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 2 + z' }-> 1 + s1 :|: s1 >= 0, s1 <= z' - 1 + (z - 1), z - 1 >= 0, z' - 1 >= 0 min(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 1 }-> 1 + min(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 1 }-> minus(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 1 }-> 0 :|: z = 0 twice(z) -{ 1 + z }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {minus}, {min}, {p}, {f} Previous analysis results are: twice: runtime: O(n^1) [1 + z], size: O(n^1) [2*z] max: runtime: O(n^1) [2 + z'], size: O(n^1) [z + z'] ---------------------------------------- (67) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using KoAT for: minus 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: f(z, z') -{ 6 + z' }-> f(minus(1 + s2, 1 + min(0, z' - 1)), p(s')) :|: s2 >= 0, s2 <= z' - 1 + 0, s' >= 0, s' <= 2 * 0, z = 1 + 0, z' - 1 >= 0 f(z, z') -{ 7 }-> f(minus(1 + s3, 1 + min(z - 1, 0)), p(s'')) :|: s3 >= 0, s3 <= 0 + (z - 1), s'' >= 0, s'' <= 2 * 0, z - 1 >= 0, z' = 1 + 0 f(z, z') -{ 5 + z' }-> f(minus(1 + s4, 1 + min(1 + (z - 2), 1 + (z' - 2))), p(twice(1 + min(z - 2, z' - 2)))) :|: s4 >= 0, s4 <= 1 + (z' - 2) + (1 + (z - 2)), z - 2 >= 0, z' - 2 >= 0 max(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 2 + z' }-> 1 + s1 :|: s1 >= 0, s1 <= z' - 1 + (z - 1), z - 1 >= 0, z' - 1 >= 0 min(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 1 }-> 1 + min(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 1 }-> minus(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 1 }-> 0 :|: z = 0 twice(z) -{ 1 + z }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {minus}, {min}, {p}, {f} Previous analysis results are: twice: runtime: O(n^1) [1 + z], size: O(n^1) [2*z] max: runtime: O(n^1) [2 + z'], size: O(n^1) [z + z'] minus: runtime: ?, size: O(n^1) [z] ---------------------------------------- (69) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: minus after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 1 + z' ---------------------------------------- (70) Obligation: Complexity RNTS consisting of the following rules: f(z, z') -{ 6 + z' }-> f(minus(1 + s2, 1 + min(0, z' - 1)), p(s')) :|: s2 >= 0, s2 <= z' - 1 + 0, s' >= 0, s' <= 2 * 0, z = 1 + 0, z' - 1 >= 0 f(z, z') -{ 7 }-> f(minus(1 + s3, 1 + min(z - 1, 0)), p(s'')) :|: s3 >= 0, s3 <= 0 + (z - 1), s'' >= 0, s'' <= 2 * 0, z - 1 >= 0, z' = 1 + 0 f(z, z') -{ 5 + z' }-> f(minus(1 + s4, 1 + min(1 + (z - 2), 1 + (z' - 2))), p(twice(1 + min(z - 2, z' - 2)))) :|: s4 >= 0, s4 <= 1 + (z' - 2) + (1 + (z - 2)), z - 2 >= 0, z' - 2 >= 0 max(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 2 + z' }-> 1 + s1 :|: s1 >= 0, s1 <= z' - 1 + (z - 1), z - 1 >= 0, z' - 1 >= 0 min(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 1 }-> 1 + min(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 1 }-> minus(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 1 }-> 0 :|: z = 0 twice(z) -{ 1 + z }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {min}, {p}, {f} Previous analysis results are: twice: runtime: O(n^1) [1 + z], size: O(n^1) [2*z] max: runtime: O(n^1) [2 + z'], size: O(n^1) [z + z'] minus: runtime: O(n^1) [1 + z'], 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: f(z, z') -{ 6 + z' }-> f(minus(1 + s2, 1 + min(0, z' - 1)), p(s')) :|: s2 >= 0, s2 <= z' - 1 + 0, s' >= 0, s' <= 2 * 0, z = 1 + 0, z' - 1 >= 0 f(z, z') -{ 7 }-> f(minus(1 + s3, 1 + min(z - 1, 0)), p(s'')) :|: s3 >= 0, s3 <= 0 + (z - 1), s'' >= 0, s'' <= 2 * 0, z - 1 >= 0, z' = 1 + 0 f(z, z') -{ 5 + z' }-> f(minus(1 + s4, 1 + min(1 + (z - 2), 1 + (z' - 2))), p(twice(1 + min(z - 2, z' - 2)))) :|: s4 >= 0, s4 <= 1 + (z' - 2) + (1 + (z - 2)), z - 2 >= 0, z' - 2 >= 0 max(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 2 + z' }-> 1 + s1 :|: s1 >= 0, s1 <= z' - 1 + (z - 1), z - 1 >= 0, z' - 1 >= 0 min(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 1 }-> 1 + min(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 1 + z' }-> s5 :|: s5 >= 0, s5 <= z - 1, z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 1 }-> 0 :|: z = 0 twice(z) -{ 1 + z }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {min}, {p}, {f} Previous analysis results are: twice: runtime: O(n^1) [1 + z], size: O(n^1) [2*z] max: runtime: O(n^1) [2 + z'], size: O(n^1) [z + z'] minus: runtime: O(n^1) [1 + z'], size: O(n^1) [z] ---------------------------------------- (73) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using KoAT for: min after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: z ---------------------------------------- (74) Obligation: Complexity RNTS consisting of the following rules: f(z, z') -{ 6 + z' }-> f(minus(1 + s2, 1 + min(0, z' - 1)), p(s')) :|: s2 >= 0, s2 <= z' - 1 + 0, s' >= 0, s' <= 2 * 0, z = 1 + 0, z' - 1 >= 0 f(z, z') -{ 7 }-> f(minus(1 + s3, 1 + min(z - 1, 0)), p(s'')) :|: s3 >= 0, s3 <= 0 + (z - 1), s'' >= 0, s'' <= 2 * 0, z - 1 >= 0, z' = 1 + 0 f(z, z') -{ 5 + z' }-> f(minus(1 + s4, 1 + min(1 + (z - 2), 1 + (z' - 2))), p(twice(1 + min(z - 2, z' - 2)))) :|: s4 >= 0, s4 <= 1 + (z' - 2) + (1 + (z - 2)), z - 2 >= 0, z' - 2 >= 0 max(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 2 + z' }-> 1 + s1 :|: s1 >= 0, s1 <= z' - 1 + (z - 1), z - 1 >= 0, z' - 1 >= 0 min(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 1 }-> 1 + min(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 1 + z' }-> s5 :|: s5 >= 0, s5 <= z - 1, z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 1 }-> 0 :|: z = 0 twice(z) -{ 1 + z }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {min}, {p}, {f} Previous analysis results are: twice: runtime: O(n^1) [1 + z], size: O(n^1) [2*z] max: runtime: O(n^1) [2 + z'], size: O(n^1) [z + z'] minus: runtime: O(n^1) [1 + z'], size: O(n^1) [z] min: runtime: ?, size: O(n^1) [z] ---------------------------------------- (75) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using KoAT for: min after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 2 + z' ---------------------------------------- (76) Obligation: Complexity RNTS consisting of the following rules: f(z, z') -{ 6 + z' }-> f(minus(1 + s2, 1 + min(0, z' - 1)), p(s')) :|: s2 >= 0, s2 <= z' - 1 + 0, s' >= 0, s' <= 2 * 0, z = 1 + 0, z' - 1 >= 0 f(z, z') -{ 7 }-> f(minus(1 + s3, 1 + min(z - 1, 0)), p(s'')) :|: s3 >= 0, s3 <= 0 + (z - 1), s'' >= 0, s'' <= 2 * 0, z - 1 >= 0, z' = 1 + 0 f(z, z') -{ 5 + z' }-> f(minus(1 + s4, 1 + min(1 + (z - 2), 1 + (z' - 2))), p(twice(1 + min(z - 2, z' - 2)))) :|: s4 >= 0, s4 <= 1 + (z' - 2) + (1 + (z - 2)), z - 2 >= 0, z' - 2 >= 0 max(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 2 + z' }-> 1 + s1 :|: s1 >= 0, s1 <= z' - 1 + (z - 1), z - 1 >= 0, z' - 1 >= 0 min(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 1 }-> 1 + min(z - 1, z' - 1) :|: z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 1 + z' }-> s5 :|: s5 >= 0, s5 <= z - 1, z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 1 }-> 0 :|: z = 0 twice(z) -{ 1 + z }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {p}, {f} Previous analysis results are: twice: runtime: O(n^1) [1 + z], size: O(n^1) [2*z] max: runtime: O(n^1) [2 + z'], size: O(n^1) [z + z'] minus: runtime: O(n^1) [1 + z'], size: O(n^1) [z] min: runtime: O(n^1) [2 + z'], size: O(n^1) [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: f(z, z') -{ 11 + s9 }-> f(s10, p(s'')) :|: s9 >= 0, s9 <= z - 1, s10 >= 0, s10 <= 1 + s3, s3 >= 0, s3 <= 0 + (z - 1), s'' >= 0, s'' <= 2 * 0, z - 1 >= 0, z' = 1 + 0 f(z, z') -{ 10 + s11 + s13 + 3*z' }-> f(s12, p(s14)) :|: s11 >= 0, s11 <= 1 + (z - 2), s12 >= 0, s12 <= 1 + s4, s13 >= 0, s13 <= z - 2, s14 >= 0, s14 <= 2 * (1 + s13), s4 >= 0, s4 <= 1 + (z' - 2) + (1 + (z - 2)), z - 2 >= 0, z' - 2 >= 0 f(z, z') -{ 9 + s7 + 2*z' }-> f(s8, p(s')) :|: s7 >= 0, s7 <= 0, s8 >= 0, s8 <= 1 + s2, s2 >= 0, s2 <= z' - 1 + 0, s' >= 0, s' <= 2 * 0, z = 1 + 0, z' - 1 >= 0 max(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 2 + z' }-> 1 + s1 :|: s1 >= 0, s1 <= z' - 1 + (z - 1), z - 1 >= 0, z' - 1 >= 0 min(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 2 + z' }-> 1 + s6 :|: s6 >= 0, s6 <= z - 1, z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 1 + z' }-> s5 :|: s5 >= 0, s5 <= z - 1, z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 1 }-> 0 :|: z = 0 twice(z) -{ 1 + z }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {p}, {f} Previous analysis results are: twice: runtime: O(n^1) [1 + z], size: O(n^1) [2*z] max: runtime: O(n^1) [2 + z'], size: O(n^1) [z + z'] minus: runtime: O(n^1) [1 + z'], size: O(n^1) [z] min: runtime: O(n^1) [2 + z'], size: O(n^1) [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: f(z, z') -{ 11 + s9 }-> f(s10, p(s'')) :|: s9 >= 0, s9 <= z - 1, s10 >= 0, s10 <= 1 + s3, s3 >= 0, s3 <= 0 + (z - 1), s'' >= 0, s'' <= 2 * 0, z - 1 >= 0, z' = 1 + 0 f(z, z') -{ 10 + s11 + s13 + 3*z' }-> f(s12, p(s14)) :|: s11 >= 0, s11 <= 1 + (z - 2), s12 >= 0, s12 <= 1 + s4, s13 >= 0, s13 <= z - 2, s14 >= 0, s14 <= 2 * (1 + s13), s4 >= 0, s4 <= 1 + (z' - 2) + (1 + (z - 2)), z - 2 >= 0, z' - 2 >= 0 f(z, z') -{ 9 + s7 + 2*z' }-> f(s8, p(s')) :|: s7 >= 0, s7 <= 0, s8 >= 0, s8 <= 1 + s2, s2 >= 0, s2 <= z' - 1 + 0, s' >= 0, s' <= 2 * 0, z = 1 + 0, z' - 1 >= 0 max(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 2 + z' }-> 1 + s1 :|: s1 >= 0, s1 <= z' - 1 + (z - 1), z - 1 >= 0, z' - 1 >= 0 min(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 2 + z' }-> 1 + s6 :|: s6 >= 0, s6 <= z - 1, z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 1 + z' }-> s5 :|: s5 >= 0, s5 <= z - 1, z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 1 }-> 0 :|: z = 0 twice(z) -{ 1 + z }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {p}, {f} Previous analysis results are: twice: runtime: O(n^1) [1 + z], size: O(n^1) [2*z] max: runtime: O(n^1) [2 + z'], size: O(n^1) [z + z'] minus: runtime: O(n^1) [1 + z'], size: O(n^1) [z] min: runtime: O(n^1) [2 + z'], size: O(n^1) [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: 1 ---------------------------------------- (82) Obligation: Complexity RNTS consisting of the following rules: f(z, z') -{ 11 + s9 }-> f(s10, p(s'')) :|: s9 >= 0, s9 <= z - 1, s10 >= 0, s10 <= 1 + s3, s3 >= 0, s3 <= 0 + (z - 1), s'' >= 0, s'' <= 2 * 0, z - 1 >= 0, z' = 1 + 0 f(z, z') -{ 10 + s11 + s13 + 3*z' }-> f(s12, p(s14)) :|: s11 >= 0, s11 <= 1 + (z - 2), s12 >= 0, s12 <= 1 + s4, s13 >= 0, s13 <= z - 2, s14 >= 0, s14 <= 2 * (1 + s13), s4 >= 0, s4 <= 1 + (z' - 2) + (1 + (z - 2)), z - 2 >= 0, z' - 2 >= 0 f(z, z') -{ 9 + s7 + 2*z' }-> f(s8, p(s')) :|: s7 >= 0, s7 <= 0, s8 >= 0, s8 <= 1 + s2, s2 >= 0, s2 <= z' - 1 + 0, s' >= 0, s' <= 2 * 0, z = 1 + 0, z' - 1 >= 0 max(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 2 + z' }-> 1 + s1 :|: s1 >= 0, s1 <= z' - 1 + (z - 1), z - 1 >= 0, z' - 1 >= 0 min(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 2 + z' }-> 1 + s6 :|: s6 >= 0, s6 <= z - 1, z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 1 + z' }-> s5 :|: s5 >= 0, s5 <= z - 1, z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 1 }-> 0 :|: z = 0 twice(z) -{ 1 + z }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {f} Previous analysis results are: twice: runtime: O(n^1) [1 + z], size: O(n^1) [2*z] max: runtime: O(n^1) [2 + z'], size: O(n^1) [z + z'] minus: runtime: O(n^1) [1 + z'], size: O(n^1) [z] min: runtime: O(n^1) [2 + z'], size: O(n^1) [z] p: runtime: O(1) [1], 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: f(z, z') -{ 12 + s9 }-> f(s10, s16) :|: s16 >= 0, s16 <= s'', s9 >= 0, s9 <= z - 1, s10 >= 0, s10 <= 1 + s3, s3 >= 0, s3 <= 0 + (z - 1), s'' >= 0, s'' <= 2 * 0, z - 1 >= 0, z' = 1 + 0 f(z, z') -{ 11 + s11 + s13 + 3*z' }-> f(s12, s17) :|: s17 >= 0, s17 <= s14, s11 >= 0, s11 <= 1 + (z - 2), s12 >= 0, s12 <= 1 + s4, s13 >= 0, s13 <= z - 2, s14 >= 0, s14 <= 2 * (1 + s13), s4 >= 0, s4 <= 1 + (z' - 2) + (1 + (z - 2)), z - 2 >= 0, z' - 2 >= 0 f(z, z') -{ 10 + s7 + 2*z' }-> f(s8, s15) :|: s15 >= 0, s15 <= s', s7 >= 0, s7 <= 0, s8 >= 0, s8 <= 1 + s2, s2 >= 0, s2 <= z' - 1 + 0, s' >= 0, s' <= 2 * 0, z = 1 + 0, z' - 1 >= 0 max(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 2 + z' }-> 1 + s1 :|: s1 >= 0, s1 <= z' - 1 + (z - 1), z - 1 >= 0, z' - 1 >= 0 min(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 2 + z' }-> 1 + s6 :|: s6 >= 0, s6 <= z - 1, z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 1 + z' }-> s5 :|: s5 >= 0, s5 <= z - 1, z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 1 }-> 0 :|: z = 0 twice(z) -{ 1 + z }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {f} Previous analysis results are: twice: runtime: O(n^1) [1 + z], size: O(n^1) [2*z] max: runtime: O(n^1) [2 + z'], size: O(n^1) [z + z'] minus: runtime: O(n^1) [1 + z'], size: O(n^1) [z] min: runtime: O(n^1) [2 + z'], size: O(n^1) [z] p: runtime: O(1) [1], size: O(n^1) [z] ---------------------------------------- (85) 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: 0 ---------------------------------------- (86) Obligation: Complexity RNTS consisting of the following rules: f(z, z') -{ 12 + s9 }-> f(s10, s16) :|: s16 >= 0, s16 <= s'', s9 >= 0, s9 <= z - 1, s10 >= 0, s10 <= 1 + s3, s3 >= 0, s3 <= 0 + (z - 1), s'' >= 0, s'' <= 2 * 0, z - 1 >= 0, z' = 1 + 0 f(z, z') -{ 11 + s11 + s13 + 3*z' }-> f(s12, s17) :|: s17 >= 0, s17 <= s14, s11 >= 0, s11 <= 1 + (z - 2), s12 >= 0, s12 <= 1 + s4, s13 >= 0, s13 <= z - 2, s14 >= 0, s14 <= 2 * (1 + s13), s4 >= 0, s4 <= 1 + (z' - 2) + (1 + (z - 2)), z - 2 >= 0, z' - 2 >= 0 f(z, z') -{ 10 + s7 + 2*z' }-> f(s8, s15) :|: s15 >= 0, s15 <= s', s7 >= 0, s7 <= 0, s8 >= 0, s8 <= 1 + s2, s2 >= 0, s2 <= z' - 1 + 0, s' >= 0, s' <= 2 * 0, z = 1 + 0, z' - 1 >= 0 max(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 2 + z' }-> 1 + s1 :|: s1 >= 0, s1 <= z' - 1 + (z - 1), z - 1 >= 0, z' - 1 >= 0 min(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 2 + z' }-> 1 + s6 :|: s6 >= 0, s6 <= z - 1, z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 1 + z' }-> s5 :|: s5 >= 0, s5 <= z - 1, z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 1 }-> 0 :|: z = 0 twice(z) -{ 1 + z }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {f} Previous analysis results are: twice: runtime: O(n^1) [1 + z], size: O(n^1) [2*z] max: runtime: O(n^1) [2 + z'], size: O(n^1) [z + z'] minus: runtime: O(n^1) [1 + z'], size: O(n^1) [z] min: runtime: O(n^1) [2 + z'], size: O(n^1) [z] p: runtime: O(1) [1], size: O(n^1) [z] f: runtime: ?, size: O(1) [0] ---------------------------------------- (87) 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: ? ---------------------------------------- (88) Obligation: Complexity RNTS consisting of the following rules: f(z, z') -{ 12 + s9 }-> f(s10, s16) :|: s16 >= 0, s16 <= s'', s9 >= 0, s9 <= z - 1, s10 >= 0, s10 <= 1 + s3, s3 >= 0, s3 <= 0 + (z - 1), s'' >= 0, s'' <= 2 * 0, z - 1 >= 0, z' = 1 + 0 f(z, z') -{ 11 + s11 + s13 + 3*z' }-> f(s12, s17) :|: s17 >= 0, s17 <= s14, s11 >= 0, s11 <= 1 + (z - 2), s12 >= 0, s12 <= 1 + s4, s13 >= 0, s13 <= z - 2, s14 >= 0, s14 <= 2 * (1 + s13), s4 >= 0, s4 <= 1 + (z' - 2) + (1 + (z - 2)), z - 2 >= 0, z' - 2 >= 0 f(z, z') -{ 10 + s7 + 2*z' }-> f(s8, s15) :|: s15 >= 0, s15 <= s', s7 >= 0, s7 <= 0, s8 >= 0, s8 <= 1 + s2, s2 >= 0, s2 <= z' - 1 + 0, s' >= 0, s' <= 2 * 0, z = 1 + 0, z' - 1 >= 0 max(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 2 + z' }-> 1 + s1 :|: s1 >= 0, s1 <= z' - 1 + (z - 1), z - 1 >= 0, z' - 1 >= 0 min(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 1 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 2 + z' }-> 1 + s6 :|: s6 >= 0, s6 <= z - 1, z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 1 + z' }-> s5 :|: s5 >= 0, s5 <= z - 1, z - 1 >= 0, z' - 1 >= 0 minus(z, z') -{ 1 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 1 }-> 0 :|: z = 0 twice(z) -{ 1 + z }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {f} Previous analysis results are: twice: runtime: O(n^1) [1 + z], size: O(n^1) [2*z] max: runtime: O(n^1) [2 + z'], size: O(n^1) [z + z'] minus: runtime: O(n^1) [1 + z'], size: O(n^1) [z] min: runtime: O(n^1) [2 + z'], size: O(n^1) [z] p: runtime: O(1) [1], size: O(n^1) [z] f: runtime: INF, size: O(1) [0] ---------------------------------------- (89) 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: minus(v0, v1) -> null_minus [0] p(v0) -> null_p [0] f(v0, v1) -> null_f [0] min(v0, v1) -> null_min [0] max(v0, v1) -> null_max [0] twice(v0) -> null_twice [0] And the following fresh constants: null_minus, null_p, null_f, null_min, null_max, null_twice ---------------------------------------- (90) 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: min(0, y) -> 0 [1] min(x, 0) -> 0 [1] min(s(x), s(y)) -> s(min(x, y)) [1] max(0, y) -> y [1] max(x, 0) -> x [1] max(s(x), s(y)) -> s(max(x, y)) [1] twice(0) -> 0 [1] twice(s(x)) -> s(s(twice(x))) [1] minus(x, 0) -> x [1] minus(s(x), s(y)) -> minus(x, y) [1] p(s(x)) -> x [1] f(s(x), s(y)) -> f(minus(max(s(x), s(y)), min(s(x), s(y))), p(twice(min(x, y)))) [1] minus(v0, v1) -> null_minus [0] p(v0) -> null_p [0] f(v0, v1) -> null_f [0] min(v0, v1) -> null_min [0] max(v0, v1) -> null_max [0] twice(v0) -> null_twice [0] The TRS has the following type information: min :: 0:s:null_minus:null_p:null_min:null_max:null_twice -> 0:s:null_minus:null_p:null_min:null_max:null_twice -> 0:s:null_minus:null_p:null_min:null_max:null_twice 0 :: 0:s:null_minus:null_p:null_min:null_max:null_twice s :: 0:s:null_minus:null_p:null_min:null_max:null_twice -> 0:s:null_minus:null_p:null_min:null_max:null_twice max :: 0:s:null_minus:null_p:null_min:null_max:null_twice -> 0:s:null_minus:null_p:null_min:null_max:null_twice -> 0:s:null_minus:null_p:null_min:null_max:null_twice twice :: 0:s:null_minus:null_p:null_min:null_max:null_twice -> 0:s:null_minus:null_p:null_min:null_max:null_twice minus :: 0:s:null_minus:null_p:null_min:null_max:null_twice -> 0:s:null_minus:null_p:null_min:null_max:null_twice -> 0:s:null_minus:null_p:null_min:null_max:null_twice p :: 0:s:null_minus:null_p:null_min:null_max:null_twice -> 0:s:null_minus:null_p:null_min:null_max:null_twice f :: 0:s:null_minus:null_p:null_min:null_max:null_twice -> 0:s:null_minus:null_p:null_min:null_max:null_twice -> null_f null_minus :: 0:s:null_minus:null_p:null_min:null_max:null_twice null_p :: 0:s:null_minus:null_p:null_min:null_max:null_twice null_f :: null_f null_min :: 0:s:null_minus:null_p:null_min:null_max:null_twice null_max :: 0:s:null_minus:null_p:null_min:null_max:null_twice null_twice :: 0:s:null_minus:null_p:null_min:null_max:null_twice Rewrite Strategy: INNERMOST ---------------------------------------- (91) 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_minus => 0 null_p => 0 null_f => 0 null_min => 0 null_max => 0 null_twice => 0 ---------------------------------------- (92) Obligation: Complexity RNTS consisting of the following rules: f(z, z') -{ 1 }-> f(minus(max(1 + x, 1 + y), min(1 + x, 1 + y)), p(twice(min(x, y)))) :|: z' = 1 + y, x >= 0, y >= 0, z = 1 + x f(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 max(z, z') -{ 1 }-> x :|: x >= 0, z = x, z' = 0 max(z, z') -{ 1 }-> y :|: y >= 0, z = 0, z' = y max(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 max(z, z') -{ 1 }-> 1 + max(x, y) :|: z' = 1 + y, x >= 0, y >= 0, z = 1 + x min(z, z') -{ 1 }-> 0 :|: y >= 0, z = 0, z' = y min(z, z') -{ 1 }-> 0 :|: x >= 0, z = x, z' = 0 min(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 min(z, z') -{ 1 }-> 1 + min(x, y) :|: z' = 1 + y, x >= 0, y >= 0, z = 1 + x minus(z, z') -{ 1 }-> x :|: x >= 0, z = x, z' = 0 minus(z, z') -{ 1 }-> minus(x, y) :|: z' = 1 + y, x >= 0, y >= 0, z = 1 + x minus(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 p(z) -{ 1 }-> x :|: x >= 0, z = 1 + x p(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 twice(z) -{ 1 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 twice(z) -{ 1 }-> 1 + (1 + twice(x)) :|: x >= 0, z = 1 + x Only complete derivations are relevant for the runtime complexity. ---------------------------------------- (93) CpxTrsToCdtProof (UPPER BOUND(ID)) Converted Cpx (relative) TRS with rewrite strategy PARALLEL_INNERMOST to CDT ---------------------------------------- (94) Obligation: Complexity Dependency Tuples Problem Rules: min(0, z0) -> 0 min(z0, 0) -> 0 min(s(z0), s(z1)) -> s(min(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 max(s(z0), s(z1)) -> s(max(z0, z1)) twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) p(s(z0)) -> z0 f(s(z0), s(z1)) -> f(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))) Tuples: MIN(0, z0) -> c MIN(z0, 0) -> c1 MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(0, z0) -> c3 MAX(z0, 0) -> c4 MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(0) -> c6 TWICE(s(z0)) -> c7(TWICE(z0)) -'(z0, 0) -> c8 -'(s(z0), s(z1)) -> c9(-'(z0, z1)) P(s(z0)) -> c10 F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), P(twice(min(z0, z1))), TWICE(min(z0, z1)), MIN(z0, z1)) S tuples: MIN(0, z0) -> c MIN(z0, 0) -> c1 MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(0, z0) -> c3 MAX(z0, 0) -> c4 MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(0) -> c6 TWICE(s(z0)) -> c7(TWICE(z0)) -'(z0, 0) -> c8 -'(s(z0), s(z1)) -> c9(-'(z0, z1)) P(s(z0)) -> c10 F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), P(twice(min(z0, z1))), TWICE(min(z0, z1)), MIN(z0, z1)) K tuples:none Defined Rule Symbols: min_2, max_2, twice_1, -_2, p_1, f_2 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, P_1, F_2 Compound Symbols: c, c1, c2_1, c3, c4, c5_1, c6, c7_1, c8, c9_1, c10, c11_3, c12_3, c13_4 ---------------------------------------- (95) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 7 trailing nodes: P(s(z0)) -> c10 TWICE(0) -> c6 -'(z0, 0) -> c8 MAX(z0, 0) -> c4 MIN(z0, 0) -> c1 MAX(0, z0) -> c3 MIN(0, z0) -> c ---------------------------------------- (96) Obligation: Complexity Dependency Tuples Problem Rules: min(0, z0) -> 0 min(z0, 0) -> 0 min(s(z0), s(z1)) -> s(min(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 max(s(z0), s(z1)) -> s(max(z0, z1)) twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) p(s(z0)) -> z0 f(s(z0), s(z1)) -> f(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), P(twice(min(z0, z1))), TWICE(min(z0, z1)), MIN(z0, z1)) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), P(twice(min(z0, z1))), TWICE(min(z0, z1)), MIN(z0, z1)) K tuples:none Defined Rule Symbols: min_2, max_2, twice_1, -_2, p_1, f_2 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c11_3, c12_3, c13_4 ---------------------------------------- (97) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (98) Obligation: Complexity Dependency Tuples Problem Rules: min(0, z0) -> 0 min(z0, 0) -> 0 min(s(z0), s(z1)) -> s(min(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 max(s(z0), s(z1)) -> s(max(z0, z1)) twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) p(s(z0)) -> z0 f(s(z0), s(z1)) -> f(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) K tuples:none Defined Rule Symbols: min_2, max_2, twice_1, -_2, p_1, f_2 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c11_3, c12_3, c13_3 ---------------------------------------- (99) CdtUsableRulesProof (BOTH BOUNDS(ID, ID)) The following rules are not usable and were removed: f(s(z0), s(z1)) -> f(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))) ---------------------------------------- (100) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) K tuples:none Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c11_3, c12_3, c13_3 ---------------------------------------- (101) CdtToCpxRelTrsProof (BOTH BOUNDS(ID, ID)) Converted S to standard rules, and D \ S as well as R to relative rules. ---------------------------------------- (102) 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: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) The (relative) TRS S consists of the following rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Rewrite Strategy: INNERMOST ---------------------------------------- (103) RelTrsToTrsProof (UPPER BOUND(ID)) transformed relative TRS to TRS ---------------------------------------- (104) 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: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) S is empty. Rewrite Strategy: INNERMOST ---------------------------------------- (105) RelTrsToWeightedTrsProof (BOTH BOUNDS(ID, ID)) Transformed relative TRS to weighted TRS ---------------------------------------- (106) 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: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) [1] MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) [1] TWICE(s(z0)) -> c7(TWICE(z0)) [1] -'(s(z0), s(z1)) -> c9(-'(z0, z1)) [1] F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) [1] F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) [1] F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) [1] -(z0, 0) -> z0 [0] -(s(z0), s(z1)) -> -(z0, z1) [0] max(s(z0), s(z1)) -> s(max(z0, z1)) [0] max(0, z0) -> z0 [0] max(z0, 0) -> z0 [0] min(s(z0), s(z1)) -> s(min(z0, z1)) [0] min(0, z0) -> 0 [0] min(z0, 0) -> 0 [0] p(s(z0)) -> z0 [0] twice(0) -> 0 [0] twice(s(z0)) -> s(s(twice(z0))) [0] Rewrite Strategy: INNERMOST ---------------------------------------- (107) CpxWeightedTrsRenamingProof (BOTH BOUNDS(ID, ID)) Renamed defined symbols to avoid conflicts with arithmetic symbols: - => minus ---------------------------------------- (108) 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: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) [1] MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) [1] TWICE(s(z0)) -> c7(TWICE(z0)) [1] -'(s(z0), s(z1)) -> c9(-'(z0, z1)) [1] F(s(z0), s(z1)) -> c11(F(minus(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) [1] F(s(z0), s(z1)) -> c12(F(minus(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) [1] F(s(z0), s(z1)) -> c13(F(minus(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) [1] minus(z0, 0) -> z0 [0] minus(s(z0), s(z1)) -> minus(z0, z1) [0] max(s(z0), s(z1)) -> s(max(z0, z1)) [0] max(0, z0) -> z0 [0] max(z0, 0) -> z0 [0] min(s(z0), s(z1)) -> s(min(z0, z1)) [0] min(0, z0) -> 0 [0] min(z0, 0) -> 0 [0] p(s(z0)) -> z0 [0] twice(0) -> 0 [0] twice(s(z0)) -> s(s(twice(z0))) [0] Rewrite Strategy: INNERMOST ---------------------------------------- (109) TypeInferenceProof (BOTH BOUNDS(ID, ID)) Infered types. ---------------------------------------- (110) Obligation: Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) [1] MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) [1] TWICE(s(z0)) -> c7(TWICE(z0)) [1] -'(s(z0), s(z1)) -> c9(-'(z0, z1)) [1] F(s(z0), s(z1)) -> c11(F(minus(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) [1] F(s(z0), s(z1)) -> c12(F(minus(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) [1] F(s(z0), s(z1)) -> c13(F(minus(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) [1] minus(z0, 0) -> z0 [0] minus(s(z0), s(z1)) -> minus(z0, z1) [0] max(s(z0), s(z1)) -> s(max(z0, z1)) [0] max(0, z0) -> z0 [0] max(z0, 0) -> z0 [0] min(s(z0), s(z1)) -> s(min(z0, z1)) [0] min(0, z0) -> 0 [0] min(z0, 0) -> 0 [0] p(s(z0)) -> z0 [0] twice(0) -> 0 [0] twice(s(z0)) -> s(s(twice(z0))) [0] The TRS has the following type information: MIN :: s:0 -> s:0 -> c2 s :: s:0 -> s:0 c2 :: c2 -> c2 MAX :: s:0 -> s:0 -> c5 c5 :: c5 -> c5 TWICE :: s:0 -> c7 c7 :: c7 -> c7 -' :: s:0 -> s:0 -> c9 c9 :: c9 -> c9 F :: s:0 -> s:0 -> c11:c12:c13 c11 :: c11:c12:c13 -> c9 -> c5 -> c11:c12:c13 minus :: s:0 -> s:0 -> s:0 max :: s:0 -> s:0 -> s:0 min :: s:0 -> s:0 -> s:0 p :: s:0 -> s:0 twice :: s:0 -> s:0 c12 :: c11:c12:c13 -> c9 -> c2 -> c11:c12:c13 c13 :: c11:c12:c13 -> c7 -> c2 -> c11:c12:c13 0 :: s:0 Rewrite Strategy: INNERMOST ---------------------------------------- (111) 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: MIN_2 MAX_2 TWICE_1 -'_2 F_2 (c) The following functions are completely defined: minus_2 max_2 min_2 p_1 twice_1 Due to the following rules being added: minus(v0, v1) -> 0 [0] max(v0, v1) -> 0 [0] min(v0, v1) -> 0 [0] p(v0) -> 0 [0] twice(v0) -> 0 [0] And the following fresh constants: const, const1, const2, const3, const4 ---------------------------------------- (112) 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: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) [1] MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) [1] TWICE(s(z0)) -> c7(TWICE(z0)) [1] -'(s(z0), s(z1)) -> c9(-'(z0, z1)) [1] F(s(z0), s(z1)) -> c11(F(minus(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) [1] F(s(z0), s(z1)) -> c12(F(minus(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) [1] F(s(z0), s(z1)) -> c13(F(minus(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) [1] minus(z0, 0) -> z0 [0] minus(s(z0), s(z1)) -> minus(z0, z1) [0] max(s(z0), s(z1)) -> s(max(z0, z1)) [0] max(0, z0) -> z0 [0] max(z0, 0) -> z0 [0] min(s(z0), s(z1)) -> s(min(z0, z1)) [0] min(0, z0) -> 0 [0] min(z0, 0) -> 0 [0] p(s(z0)) -> z0 [0] twice(0) -> 0 [0] twice(s(z0)) -> s(s(twice(z0))) [0] minus(v0, v1) -> 0 [0] max(v0, v1) -> 0 [0] min(v0, v1) -> 0 [0] p(v0) -> 0 [0] twice(v0) -> 0 [0] The TRS has the following type information: MIN :: s:0 -> s:0 -> c2 s :: s:0 -> s:0 c2 :: c2 -> c2 MAX :: s:0 -> s:0 -> c5 c5 :: c5 -> c5 TWICE :: s:0 -> c7 c7 :: c7 -> c7 -' :: s:0 -> s:0 -> c9 c9 :: c9 -> c9 F :: s:0 -> s:0 -> c11:c12:c13 c11 :: c11:c12:c13 -> c9 -> c5 -> c11:c12:c13 minus :: s:0 -> s:0 -> s:0 max :: s:0 -> s:0 -> s:0 min :: s:0 -> s:0 -> s:0 p :: s:0 -> s:0 twice :: s:0 -> s:0 c12 :: c11:c12:c13 -> c9 -> c2 -> c11:c12:c13 c13 :: c11:c12:c13 -> c7 -> c2 -> c11:c12:c13 0 :: s:0 const :: c2 const1 :: c5 const2 :: c7 const3 :: c9 const4 :: c11:c12:c13 Rewrite Strategy: INNERMOST ---------------------------------------- (113) NarrowingProof (BOTH BOUNDS(ID, ID)) Narrowed the inner basic terms of all right-hand sides by a single narrowing step. ---------------------------------------- (114) 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: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) [1] MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) [1] TWICE(s(z0)) -> c7(TWICE(z0)) [1] -'(s(z0), s(z1)) -> c9(-'(z0, z1)) [1] F(s(z0), s(z1)) -> c11(F(minus(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) [1] F(s(z0), s(z1)) -> c12(F(minus(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) [1] F(s(z0), s(z1)) -> c13(F(minus(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) [1] minus(z0, 0) -> z0 [0] minus(s(z0), s(z1)) -> minus(z0, z1) [0] max(s(z0), s(z1)) -> s(max(z0, z1)) [0] max(0, z0) -> z0 [0] max(z0, 0) -> z0 [0] min(s(z0), s(z1)) -> s(min(z0, z1)) [0] min(0, z0) -> 0 [0] min(z0, 0) -> 0 [0] p(s(z0)) -> z0 [0] twice(0) -> 0 [0] twice(s(z0)) -> s(s(twice(z0))) [0] minus(v0, v1) -> 0 [0] max(v0, v1) -> 0 [0] min(v0, v1) -> 0 [0] p(v0) -> 0 [0] twice(v0) -> 0 [0] The TRS has the following type information: MIN :: s:0 -> s:0 -> c2 s :: s:0 -> s:0 c2 :: c2 -> c2 MAX :: s:0 -> s:0 -> c5 c5 :: c5 -> c5 TWICE :: s:0 -> c7 c7 :: c7 -> c7 -' :: s:0 -> s:0 -> c9 c9 :: c9 -> c9 F :: s:0 -> s:0 -> c11:c12:c13 c11 :: c11:c12:c13 -> c9 -> c5 -> c11:c12:c13 minus :: s:0 -> s:0 -> s:0 max :: s:0 -> s:0 -> s:0 min :: s:0 -> s:0 -> s:0 p :: s:0 -> s:0 twice :: s:0 -> s:0 c12 :: c11:c12:c13 -> c9 -> c2 -> c11:c12:c13 c13 :: c11:c12:c13 -> c7 -> c2 -> c11:c12:c13 0 :: s:0 const :: c2 const1 :: c5 const2 :: c7 const3 :: c9 const4 :: c11:c12:c13 Rewrite Strategy: INNERMOST ---------------------------------------- (115) 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 const1 => 0 const2 => 0 const3 => 0 const4 => 0 ---------------------------------------- (116) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ 1 }-> 1 + -'(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + z0, 1 + z1), min(1 + z0, 1 + z1)), p(twice(min(z0, z1)))) + TWICE(min(z0, z1)) + MIN(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + z0, 1 + z1), min(1 + z0, 1 + z1)), p(twice(min(z0, z1)))) + -'(max(1 + z0, 1 + z1), min(1 + z0, 1 + z1)) + MIN(1 + z0, 1 + z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + z0, 1 + z1), min(1 + z0, 1 + z1)), p(twice(min(z0, z1)))) + -'(max(1 + z0, 1 + z1), min(1 + z0, 1 + z1)) + MAX(1 + z0, 1 + z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 MAX(z, z') -{ 1 }-> 1 + MAX(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 MIN(z, z') -{ 1 }-> 1 + MIN(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 TWICE(z) -{ 1 }-> 1 + TWICE(z0) :|: z = 1 + z0, z0 >= 0 max(z, z') -{ 0 }-> z0 :|: z0 >= 0, z = 0, z' = z0 max(z, z') -{ 0 }-> z0 :|: z = z0, z0 >= 0, z' = 0 max(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 max(z, z') -{ 0 }-> 1 + max(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 min(z, z') -{ 0 }-> 0 :|: z0 >= 0, z = 0, z' = z0 min(z, z') -{ 0 }-> 0 :|: z = z0, z0 >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 min(z, z') -{ 0 }-> 1 + min(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 minus(z, z') -{ 0 }-> z0 :|: z = z0, z0 >= 0, z' = 0 minus(z, z') -{ 0 }-> minus(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 minus(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 p(z) -{ 0 }-> z0 :|: z = 1 + z0, z0 >= 0 p(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 twice(z) -{ 0 }-> 1 + (1 + twice(z0)) :|: z = 1 + z0, z0 >= 0 ---------------------------------------- (117) InliningProof (UPPER BOUND(ID)) Inlined the following terminating rules on right-hand sides where appropriate: p(z) -{ 0 }-> z0 :|: z = 1 + z0, z0 >= 0 p(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 ---------------------------------------- (118) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ 1 }-> 1 + -'(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + z0, 1 + z1), min(1 + z0, 1 + z1)), p(twice(min(z0, z1)))) + TWICE(min(z0, z1)) + MIN(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + z0, 1 + z1), min(1 + z0, 1 + z1)), p(twice(min(z0, z1)))) + -'(max(1 + z0, 1 + z1), min(1 + z0, 1 + z1)) + MIN(1 + z0, 1 + z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + z0, 1 + z1), min(1 + z0, 1 + z1)), p(twice(min(z0, z1)))) + -'(max(1 + z0, 1 + z1), min(1 + z0, 1 + z1)) + MAX(1 + z0, 1 + z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 MAX(z, z') -{ 1 }-> 1 + MAX(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 MIN(z, z') -{ 1 }-> 1 + MIN(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 TWICE(z) -{ 1 }-> 1 + TWICE(z0) :|: z = 1 + z0, z0 >= 0 max(z, z') -{ 0 }-> z0 :|: z0 >= 0, z = 0, z' = z0 max(z, z') -{ 0 }-> z0 :|: z = z0, z0 >= 0, z' = 0 max(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 max(z, z') -{ 0 }-> 1 + max(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 min(z, z') -{ 0 }-> 0 :|: z0 >= 0, z = 0, z' = z0 min(z, z') -{ 0 }-> 0 :|: z = z0, z0 >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 min(z, z') -{ 0 }-> 1 + min(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 minus(z, z') -{ 0 }-> z0 :|: z = z0, z0 >= 0, z' = 0 minus(z, z') -{ 0 }-> minus(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 minus(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 p(z) -{ 0 }-> z0 :|: z = 1 + z0, z0 >= 0 p(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 twice(z) -{ 0 }-> 1 + (1 + twice(z0)) :|: z = 1 + z0, z0 >= 0 ---------------------------------------- (119) SimplificationProof (BOTH BOUNDS(ID, ID)) Simplified the RNTS by moving equalities from the constraints into the right-hand sides. ---------------------------------------- (120) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ 1 }-> 1 + -'(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + TWICE(min(z - 1, z' - 1)) + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MIN(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MAX(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ 1 }-> 1 + MAX(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ 1 }-> 1 + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ 1 }-> 1 + TWICE(z - 1) :|: z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + max(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + min(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> minus(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + twice(z - 1)) :|: z - 1 >= 0 ---------------------------------------- (121) CpxRntsAnalysisOrderProof (BOTH BOUNDS(ID, ID)) Found the following analysis order by SCC decomposition: { twice } { -' } { minus } { TWICE } { MIN } { max } { min } { p } { MAX } { F } ---------------------------------------- (122) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ 1 }-> 1 + -'(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + TWICE(min(z - 1, z' - 1)) + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MIN(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MAX(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ 1 }-> 1 + MAX(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ 1 }-> 1 + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ 1 }-> 1 + TWICE(z - 1) :|: z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + max(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + min(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> minus(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + twice(z - 1)) :|: z - 1 >= 0 Function symbols to be analyzed: {twice}, {-'}, {minus}, {TWICE}, {MIN}, {max}, {min}, {p}, {MAX}, {F} ---------------------------------------- (123) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (124) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ 1 }-> 1 + -'(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + TWICE(min(z - 1, z' - 1)) + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MIN(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MAX(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ 1 }-> 1 + MAX(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ 1 }-> 1 + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ 1 }-> 1 + TWICE(z - 1) :|: z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + max(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + min(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> minus(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + twice(z - 1)) :|: z - 1 >= 0 Function symbols to be analyzed: {twice}, {-'}, {minus}, {TWICE}, {MIN}, {max}, {min}, {p}, {MAX}, {F} ---------------------------------------- (125) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: twice after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 2*z ---------------------------------------- (126) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ 1 }-> 1 + -'(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + TWICE(min(z - 1, z' - 1)) + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MIN(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MAX(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ 1 }-> 1 + MAX(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ 1 }-> 1 + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ 1 }-> 1 + TWICE(z - 1) :|: z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + max(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + min(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> minus(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + twice(z - 1)) :|: z - 1 >= 0 Function symbols to be analyzed: {twice}, {-'}, {minus}, {TWICE}, {MIN}, {max}, {min}, {p}, {MAX}, {F} Previous analysis results are: twice: runtime: ?, size: O(n^1) [2*z] ---------------------------------------- (127) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: twice after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (128) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ 1 }-> 1 + -'(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + TWICE(min(z - 1, z' - 1)) + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MIN(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MAX(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ 1 }-> 1 + MAX(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ 1 }-> 1 + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ 1 }-> 1 + TWICE(z - 1) :|: z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + max(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + min(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> minus(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + twice(z - 1)) :|: z - 1 >= 0 Function symbols to be analyzed: {-'}, {minus}, {TWICE}, {MIN}, {max}, {min}, {p}, {MAX}, {F} Previous analysis results are: twice: runtime: O(1) [0], size: O(n^1) [2*z] ---------------------------------------- (129) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (130) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ 1 }-> 1 + -'(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + TWICE(min(z - 1, z' - 1)) + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MIN(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MAX(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ 1 }-> 1 + MAX(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ 1 }-> 1 + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ 1 }-> 1 + TWICE(z - 1) :|: z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + max(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + min(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> minus(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {-'}, {minus}, {TWICE}, {MIN}, {max}, {min}, {p}, {MAX}, {F} Previous analysis results are: twice: runtime: O(1) [0], size: O(n^1) [2*z] ---------------------------------------- (131) 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 ---------------------------------------- (132) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ 1 }-> 1 + -'(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + TWICE(min(z - 1, z' - 1)) + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MIN(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MAX(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ 1 }-> 1 + MAX(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ 1 }-> 1 + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ 1 }-> 1 + TWICE(z - 1) :|: z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + max(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + min(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> minus(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {-'}, {minus}, {TWICE}, {MIN}, {max}, {min}, {p}, {MAX}, {F} Previous analysis results are: twice: runtime: O(1) [0], size: O(n^1) [2*z] -': runtime: ?, size: O(1) [0] ---------------------------------------- (133) 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' ---------------------------------------- (134) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ 1 }-> 1 + -'(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + TWICE(min(z - 1, z' - 1)) + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MIN(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MAX(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ 1 }-> 1 + MAX(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ 1 }-> 1 + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ 1 }-> 1 + TWICE(z - 1) :|: z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + max(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + min(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> minus(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {minus}, {TWICE}, {MIN}, {max}, {min}, {p}, {MAX}, {F} Previous analysis results are: twice: runtime: O(1) [0], size: O(n^1) [2*z] -': runtime: O(n^1) [z'], size: O(1) [0] ---------------------------------------- (135) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (136) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ z' }-> 1 + s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + TWICE(min(z - 1, z' - 1)) + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MIN(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MAX(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ 1 }-> 1 + MAX(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ 1 }-> 1 + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ 1 }-> 1 + TWICE(z - 1) :|: z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + max(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + min(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> minus(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {minus}, {TWICE}, {MIN}, {max}, {min}, {p}, {MAX}, {F} Previous analysis results are: twice: runtime: O(1) [0], size: O(n^1) [2*z] -': runtime: O(n^1) [z'], size: O(1) [0] ---------------------------------------- (137) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using KoAT for: minus after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: z ---------------------------------------- (138) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ z' }-> 1 + s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + TWICE(min(z - 1, z' - 1)) + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MIN(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MAX(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ 1 }-> 1 + MAX(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ 1 }-> 1 + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ 1 }-> 1 + TWICE(z - 1) :|: z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + max(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + min(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> minus(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {minus}, {TWICE}, {MIN}, {max}, {min}, {p}, {MAX}, {F} Previous analysis results are: twice: runtime: O(1) [0], size: O(n^1) [2*z] -': runtime: O(n^1) [z'], size: O(1) [0] minus: runtime: ?, size: O(n^1) [z] ---------------------------------------- (139) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: minus after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (140) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ z' }-> 1 + s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + TWICE(min(z - 1, z' - 1)) + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MIN(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MAX(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ 1 }-> 1 + MAX(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ 1 }-> 1 + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ 1 }-> 1 + TWICE(z - 1) :|: z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + max(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + min(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> minus(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {TWICE}, {MIN}, {max}, {min}, {p}, {MAX}, {F} Previous analysis results are: twice: runtime: O(1) [0], size: O(n^1) [2*z] -': runtime: O(n^1) [z'], size: O(1) [0] minus: runtime: O(1) [0], size: O(n^1) [z] ---------------------------------------- (141) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (142) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ z' }-> 1 + s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + TWICE(min(z - 1, z' - 1)) + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MIN(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MAX(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ 1 }-> 1 + MAX(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ 1 }-> 1 + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ 1 }-> 1 + TWICE(z - 1) :|: z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + max(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + min(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= z - 1, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {TWICE}, {MIN}, {max}, {min}, {p}, {MAX}, {F} Previous analysis results are: twice: runtime: O(1) [0], size: O(n^1) [2*z] -': runtime: O(n^1) [z'], size: O(1) [0] minus: runtime: O(1) [0], size: O(n^1) [z] ---------------------------------------- (143) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: TWICE after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (144) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ z' }-> 1 + s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + TWICE(min(z - 1, z' - 1)) + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MIN(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MAX(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ 1 }-> 1 + MAX(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ 1 }-> 1 + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ 1 }-> 1 + TWICE(z - 1) :|: z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + max(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + min(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= z - 1, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {TWICE}, {MIN}, {max}, {min}, {p}, {MAX}, {F} Previous analysis results are: twice: runtime: O(1) [0], size: O(n^1) [2*z] -': runtime: O(n^1) [z'], size: O(1) [0] minus: runtime: O(1) [0], size: O(n^1) [z] TWICE: runtime: ?, size: O(1) [0] ---------------------------------------- (145) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: TWICE after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: z ---------------------------------------- (146) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ z' }-> 1 + s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + TWICE(min(z - 1, z' - 1)) + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MIN(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MAX(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ 1 }-> 1 + MAX(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ 1 }-> 1 + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ 1 }-> 1 + TWICE(z - 1) :|: z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + max(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + min(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= z - 1, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {MIN}, {max}, {min}, {p}, {MAX}, {F} Previous analysis results are: twice: runtime: O(1) [0], size: O(n^1) [2*z] -': runtime: O(n^1) [z'], size: O(1) [0] minus: runtime: O(1) [0], size: O(n^1) [z] TWICE: runtime: O(n^1) [z], size: O(1) [0] ---------------------------------------- (147) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (148) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ z' }-> 1 + s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + TWICE(min(z - 1, z' - 1)) + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MIN(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MAX(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ 1 }-> 1 + MAX(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ 1 }-> 1 + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ z }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + max(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + min(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= z - 1, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {MIN}, {max}, {min}, {p}, {MAX}, {F} Previous analysis results are: twice: runtime: O(1) [0], size: O(n^1) [2*z] -': runtime: O(n^1) [z'], size: O(1) [0] minus: runtime: O(1) [0], size: O(n^1) [z] TWICE: runtime: O(n^1) [z], size: O(1) [0] ---------------------------------------- (149) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: MIN after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (150) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ z' }-> 1 + s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + TWICE(min(z - 1, z' - 1)) + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MIN(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MAX(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ 1 }-> 1 + MAX(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ 1 }-> 1 + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ z }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + max(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + min(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= z - 1, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {MIN}, {max}, {min}, {p}, {MAX}, {F} Previous analysis results are: twice: runtime: O(1) [0], size: O(n^1) [2*z] -': runtime: O(n^1) [z'], size: O(1) [0] minus: runtime: O(1) [0], size: O(n^1) [z] TWICE: runtime: O(n^1) [z], size: O(1) [0] MIN: runtime: ?, size: O(1) [0] ---------------------------------------- (151) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: MIN after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: z' ---------------------------------------- (152) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ z' }-> 1 + s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + TWICE(min(z - 1, z' - 1)) + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MIN(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MAX(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ 1 }-> 1 + MAX(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ 1 }-> 1 + MIN(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ z }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + max(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + min(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= z - 1, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {max}, {min}, {p}, {MAX}, {F} Previous analysis results are: twice: runtime: O(1) [0], size: O(n^1) [2*z] -': runtime: O(n^1) [z'], size: O(1) [0] minus: runtime: O(1) [0], size: O(n^1) [z] TWICE: runtime: O(n^1) [z], size: O(1) [0] MIN: runtime: O(n^1) [z'], size: O(1) [0] ---------------------------------------- (153) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (154) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ z' }-> 1 + s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ z' }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + TWICE(min(z - 1, z' - 1)) + s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 + z' }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MAX(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ 1 }-> 1 + MAX(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ z' }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ z }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + max(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + min(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= z - 1, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {max}, {min}, {p}, {MAX}, {F} Previous analysis results are: twice: runtime: O(1) [0], size: O(n^1) [2*z] -': runtime: O(n^1) [z'], size: O(1) [0] minus: runtime: O(1) [0], size: O(n^1) [z] TWICE: runtime: O(n^1) [z], size: O(1) [0] MIN: runtime: O(n^1) [z'], size: O(1) [0] ---------------------------------------- (155) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: max after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: z + z' ---------------------------------------- (156) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ z' }-> 1 + s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ z' }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + TWICE(min(z - 1, z' - 1)) + s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 + z' }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MAX(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ 1 }-> 1 + MAX(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ z' }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ z }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + max(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + min(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= z - 1, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {max}, {min}, {p}, {MAX}, {F} Previous analysis results are: twice: runtime: O(1) [0], size: O(n^1) [2*z] -': runtime: O(n^1) [z'], size: O(1) [0] minus: runtime: O(1) [0], size: O(n^1) [z] TWICE: runtime: O(n^1) [z], size: O(1) [0] MIN: runtime: O(n^1) [z'], size: O(1) [0] max: runtime: ?, size: O(n^1) [z + z'] ---------------------------------------- (157) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: max after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (158) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ z' }-> 1 + s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ z' }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + TWICE(min(z - 1, z' - 1)) + s4 :|: s4 >= 0, s4 <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 + z' }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + s3 :|: s3 >= 0, s3 <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(max(1 + (z - 1), 1 + (z' - 1)), min(1 + (z - 1), 1 + (z' - 1))) + MAX(1 + (z - 1), 1 + (z' - 1)) :|: z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ 1 }-> 1 + MAX(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ z' }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ z }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + max(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + min(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= z - 1, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {min}, {p}, {MAX}, {F} Previous analysis results are: twice: runtime: O(1) [0], size: O(n^1) [2*z] -': runtime: O(n^1) [z'], size: O(1) [0] minus: runtime: O(1) [0], size: O(n^1) [z] TWICE: runtime: O(n^1) [z], size: O(1) [0] MIN: runtime: O(n^1) [z'], size: O(1) [0] max: runtime: O(1) [0], size: O(n^1) [z + z'] ---------------------------------------- (159) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (160) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ z' }-> 1 + s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ z' }-> 1 + F(minus(s10, min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + TWICE(min(z - 1, z' - 1)) + s4 :|: s10 >= 0, s10 <= 1 + (z' - 1) + (1 + (z - 1)), s4 >= 0, s4 <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(s6, min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(s7, min(1 + (z - 1), 1 + (z' - 1))) + MAX(1 + (z - 1), 1 + (z' - 1)) :|: s6 >= 0, s6 <= 1 + (z' - 1) + (1 + (z - 1)), s7 >= 0, s7 <= 1 + (z' - 1) + (1 + (z - 1)), z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 + z' }-> 1 + F(minus(s8, min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(s9, min(1 + (z - 1), 1 + (z' - 1))) + s3 :|: s8 >= 0, s8 <= 1 + (z' - 1) + (1 + (z - 1)), s9 >= 0, s9 <= 1 + (z' - 1) + (1 + (z - 1)), s3 >= 0, s3 <= 0, z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ 1 }-> 1 + MAX(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ z' }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ z }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + s5 :|: s5 >= 0, s5 <= z' - 1 + (z - 1), z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + min(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= z - 1, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {min}, {p}, {MAX}, {F} Previous analysis results are: twice: runtime: O(1) [0], size: O(n^1) [2*z] -': runtime: O(n^1) [z'], size: O(1) [0] minus: runtime: O(1) [0], size: O(n^1) [z] TWICE: runtime: O(n^1) [z], size: O(1) [0] MIN: runtime: O(n^1) [z'], size: O(1) [0] max: runtime: O(1) [0], size: O(n^1) [z + z'] ---------------------------------------- (161) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: min after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: z' ---------------------------------------- (162) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ z' }-> 1 + s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ z' }-> 1 + F(minus(s10, min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + TWICE(min(z - 1, z' - 1)) + s4 :|: s10 >= 0, s10 <= 1 + (z' - 1) + (1 + (z - 1)), s4 >= 0, s4 <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(s6, min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(s7, min(1 + (z - 1), 1 + (z' - 1))) + MAX(1 + (z - 1), 1 + (z' - 1)) :|: s6 >= 0, s6 <= 1 + (z' - 1) + (1 + (z - 1)), s7 >= 0, s7 <= 1 + (z' - 1) + (1 + (z - 1)), z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 + z' }-> 1 + F(minus(s8, min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(s9, min(1 + (z - 1), 1 + (z' - 1))) + s3 :|: s8 >= 0, s8 <= 1 + (z' - 1) + (1 + (z - 1)), s9 >= 0, s9 <= 1 + (z' - 1) + (1 + (z - 1)), s3 >= 0, s3 <= 0, z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ 1 }-> 1 + MAX(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ z' }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ z }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + s5 :|: s5 >= 0, s5 <= z' - 1 + (z - 1), z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + min(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= z - 1, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {min}, {p}, {MAX}, {F} Previous analysis results are: twice: runtime: O(1) [0], size: O(n^1) [2*z] -': runtime: O(n^1) [z'], size: O(1) [0] minus: runtime: O(1) [0], size: O(n^1) [z] TWICE: runtime: O(n^1) [z], size: O(1) [0] MIN: runtime: O(n^1) [z'], size: O(1) [0] max: runtime: O(1) [0], size: O(n^1) [z + z'] min: runtime: ?, size: O(n^1) [z'] ---------------------------------------- (163) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: min after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (164) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ z' }-> 1 + s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ z' }-> 1 + F(minus(s10, min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + TWICE(min(z - 1, z' - 1)) + s4 :|: s10 >= 0, s10 <= 1 + (z' - 1) + (1 + (z - 1)), s4 >= 0, s4 <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 }-> 1 + F(minus(s6, min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(s7, min(1 + (z - 1), 1 + (z' - 1))) + MAX(1 + (z - 1), 1 + (z' - 1)) :|: s6 >= 0, s6 <= 1 + (z' - 1) + (1 + (z - 1)), s7 >= 0, s7 <= 1 + (z' - 1) + (1 + (z - 1)), z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 + z' }-> 1 + F(minus(s8, min(1 + (z - 1), 1 + (z' - 1))), p(twice(min(z - 1, z' - 1)))) + -'(s9, min(1 + (z - 1), 1 + (z' - 1))) + s3 :|: s8 >= 0, s8 <= 1 + (z' - 1) + (1 + (z - 1)), s9 >= 0, s9 <= 1 + (z' - 1) + (1 + (z - 1)), s3 >= 0, s3 <= 0, z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ 1 }-> 1 + MAX(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ z' }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ z }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + s5 :|: s5 >= 0, s5 <= z' - 1 + (z - 1), z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + min(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= z - 1, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {p}, {MAX}, {F} Previous analysis results are: twice: runtime: O(1) [0], size: O(n^1) [2*z] -': runtime: O(n^1) [z'], size: O(1) [0] minus: runtime: O(1) [0], size: O(n^1) [z] TWICE: runtime: O(n^1) [z], size: O(1) [0] MIN: runtime: O(n^1) [z'], size: O(1) [0] max: runtime: O(1) [0], size: O(n^1) [z + z'] min: runtime: O(1) [0], size: O(n^1) [z'] ---------------------------------------- (165) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (166) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ z' }-> 1 + s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 + s16 }-> 1 + F(s13, p(s15)) + s17 + MAX(1 + (z - 1), 1 + (z' - 1)) :|: s12 >= 0, s12 <= 1 + (z' - 1), s13 >= 0, s13 <= s6, s14 >= 0, s14 <= z' - 1, s15 >= 0, s15 <= 2 * s14, s16 >= 0, s16 <= 1 + (z' - 1), s17 >= 0, s17 <= 0, s6 >= 0, s6 <= 1 + (z' - 1) + (1 + (z - 1)), s7 >= 0, s7 <= 1 + (z' - 1) + (1 + (z - 1)), z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 + s22 + z' }-> 1 + F(s19, p(s21)) + s23 + s3 :|: s18 >= 0, s18 <= 1 + (z' - 1), s19 >= 0, s19 <= s8, s20 >= 0, s20 <= z' - 1, s21 >= 0, s21 <= 2 * s20, s22 >= 0, s22 <= 1 + (z' - 1), s23 >= 0, s23 <= 0, s8 >= 0, s8 <= 1 + (z' - 1) + (1 + (z - 1)), s9 >= 0, s9 <= 1 + (z' - 1) + (1 + (z - 1)), s3 >= 0, s3 <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ s28 + z' }-> 1 + F(s25, p(s27)) + s29 + s4 :|: s24 >= 0, s24 <= 1 + (z' - 1), s25 >= 0, s25 <= s10, s26 >= 0, s26 <= z' - 1, s27 >= 0, s27 <= 2 * s26, s28 >= 0, s28 <= z' - 1, s29 >= 0, s29 <= 0, s10 >= 0, s10 <= 1 + (z' - 1) + (1 + (z - 1)), s4 >= 0, s4 <= 0, z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ 1 }-> 1 + MAX(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ z' }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ z }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + s5 :|: s5 >= 0, s5 <= z' - 1 + (z - 1), z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + s11 :|: s11 >= 0, s11 <= z' - 1, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= z - 1, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {p}, {MAX}, {F} Previous analysis results are: twice: runtime: O(1) [0], size: O(n^1) [2*z] -': runtime: O(n^1) [z'], size: O(1) [0] minus: runtime: O(1) [0], size: O(n^1) [z] TWICE: runtime: O(n^1) [z], size: O(1) [0] MIN: runtime: O(n^1) [z'], size: O(1) [0] max: runtime: O(1) [0], size: O(n^1) [z + z'] min: runtime: O(1) [0], size: O(n^1) [z'] ---------------------------------------- (167) 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 ---------------------------------------- (168) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ z' }-> 1 + s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 + s16 }-> 1 + F(s13, p(s15)) + s17 + MAX(1 + (z - 1), 1 + (z' - 1)) :|: s12 >= 0, s12 <= 1 + (z' - 1), s13 >= 0, s13 <= s6, s14 >= 0, s14 <= z' - 1, s15 >= 0, s15 <= 2 * s14, s16 >= 0, s16 <= 1 + (z' - 1), s17 >= 0, s17 <= 0, s6 >= 0, s6 <= 1 + (z' - 1) + (1 + (z - 1)), s7 >= 0, s7 <= 1 + (z' - 1) + (1 + (z - 1)), z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 + s22 + z' }-> 1 + F(s19, p(s21)) + s23 + s3 :|: s18 >= 0, s18 <= 1 + (z' - 1), s19 >= 0, s19 <= s8, s20 >= 0, s20 <= z' - 1, s21 >= 0, s21 <= 2 * s20, s22 >= 0, s22 <= 1 + (z' - 1), s23 >= 0, s23 <= 0, s8 >= 0, s8 <= 1 + (z' - 1) + (1 + (z - 1)), s9 >= 0, s9 <= 1 + (z' - 1) + (1 + (z - 1)), s3 >= 0, s3 <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ s28 + z' }-> 1 + F(s25, p(s27)) + s29 + s4 :|: s24 >= 0, s24 <= 1 + (z' - 1), s25 >= 0, s25 <= s10, s26 >= 0, s26 <= z' - 1, s27 >= 0, s27 <= 2 * s26, s28 >= 0, s28 <= z' - 1, s29 >= 0, s29 <= 0, s10 >= 0, s10 <= 1 + (z' - 1) + (1 + (z - 1)), s4 >= 0, s4 <= 0, z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ 1 }-> 1 + MAX(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ z' }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ z }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + s5 :|: s5 >= 0, s5 <= z' - 1 + (z - 1), z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + s11 :|: s11 >= 0, s11 <= z' - 1, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= z - 1, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {p}, {MAX}, {F} Previous analysis results are: twice: runtime: O(1) [0], size: O(n^1) [2*z] -': runtime: O(n^1) [z'], size: O(1) [0] minus: runtime: O(1) [0], size: O(n^1) [z] TWICE: runtime: O(n^1) [z], size: O(1) [0] MIN: runtime: O(n^1) [z'], size: O(1) [0] max: runtime: O(1) [0], size: O(n^1) [z + z'] min: runtime: O(1) [0], size: O(n^1) [z'] p: runtime: ?, size: O(n^1) [z] ---------------------------------------- (169) 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 ---------------------------------------- (170) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ z' }-> 1 + s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 + s16 }-> 1 + F(s13, p(s15)) + s17 + MAX(1 + (z - 1), 1 + (z' - 1)) :|: s12 >= 0, s12 <= 1 + (z' - 1), s13 >= 0, s13 <= s6, s14 >= 0, s14 <= z' - 1, s15 >= 0, s15 <= 2 * s14, s16 >= 0, s16 <= 1 + (z' - 1), s17 >= 0, s17 <= 0, s6 >= 0, s6 <= 1 + (z' - 1) + (1 + (z - 1)), s7 >= 0, s7 <= 1 + (z' - 1) + (1 + (z - 1)), z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 + s22 + z' }-> 1 + F(s19, p(s21)) + s23 + s3 :|: s18 >= 0, s18 <= 1 + (z' - 1), s19 >= 0, s19 <= s8, s20 >= 0, s20 <= z' - 1, s21 >= 0, s21 <= 2 * s20, s22 >= 0, s22 <= 1 + (z' - 1), s23 >= 0, s23 <= 0, s8 >= 0, s8 <= 1 + (z' - 1) + (1 + (z - 1)), s9 >= 0, s9 <= 1 + (z' - 1) + (1 + (z - 1)), s3 >= 0, s3 <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ s28 + z' }-> 1 + F(s25, p(s27)) + s29 + s4 :|: s24 >= 0, s24 <= 1 + (z' - 1), s25 >= 0, s25 <= s10, s26 >= 0, s26 <= z' - 1, s27 >= 0, s27 <= 2 * s26, s28 >= 0, s28 <= z' - 1, s29 >= 0, s29 <= 0, s10 >= 0, s10 <= 1 + (z' - 1) + (1 + (z - 1)), s4 >= 0, s4 <= 0, z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ 1 }-> 1 + MAX(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ z' }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ z }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + s5 :|: s5 >= 0, s5 <= z' - 1 + (z - 1), z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + s11 :|: s11 >= 0, s11 <= z' - 1, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= z - 1, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {MAX}, {F} Previous analysis results are: twice: runtime: O(1) [0], size: O(n^1) [2*z] -': runtime: O(n^1) [z'], size: O(1) [0] minus: runtime: O(1) [0], size: O(n^1) [z] TWICE: runtime: O(n^1) [z], size: O(1) [0] MIN: runtime: O(n^1) [z'], size: O(1) [0] max: runtime: O(1) [0], size: O(n^1) [z + z'] min: runtime: O(1) [0], size: O(n^1) [z'] p: runtime: O(1) [0], size: O(n^1) [z] ---------------------------------------- (171) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (172) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ z' }-> 1 + s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 + s16 }-> 1 + F(s13, s30) + s17 + MAX(1 + (z - 1), 1 + (z' - 1)) :|: s30 >= 0, s30 <= s15, s12 >= 0, s12 <= 1 + (z' - 1), s13 >= 0, s13 <= s6, s14 >= 0, s14 <= z' - 1, s15 >= 0, s15 <= 2 * s14, s16 >= 0, s16 <= 1 + (z' - 1), s17 >= 0, s17 <= 0, s6 >= 0, s6 <= 1 + (z' - 1) + (1 + (z - 1)), s7 >= 0, s7 <= 1 + (z' - 1) + (1 + (z - 1)), z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 + s22 + z' }-> 1 + F(s19, s31) + s23 + s3 :|: s31 >= 0, s31 <= s21, s18 >= 0, s18 <= 1 + (z' - 1), s19 >= 0, s19 <= s8, s20 >= 0, s20 <= z' - 1, s21 >= 0, s21 <= 2 * s20, s22 >= 0, s22 <= 1 + (z' - 1), s23 >= 0, s23 <= 0, s8 >= 0, s8 <= 1 + (z' - 1) + (1 + (z - 1)), s9 >= 0, s9 <= 1 + (z' - 1) + (1 + (z - 1)), s3 >= 0, s3 <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ s28 + z' }-> 1 + F(s25, s32) + s29 + s4 :|: s32 >= 0, s32 <= s27, s24 >= 0, s24 <= 1 + (z' - 1), s25 >= 0, s25 <= s10, s26 >= 0, s26 <= z' - 1, s27 >= 0, s27 <= 2 * s26, s28 >= 0, s28 <= z' - 1, s29 >= 0, s29 <= 0, s10 >= 0, s10 <= 1 + (z' - 1) + (1 + (z - 1)), s4 >= 0, s4 <= 0, z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ 1 }-> 1 + MAX(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ z' }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ z }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + s5 :|: s5 >= 0, s5 <= z' - 1 + (z - 1), z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + s11 :|: s11 >= 0, s11 <= z' - 1, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= z - 1, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {MAX}, {F} Previous analysis results are: twice: runtime: O(1) [0], size: O(n^1) [2*z] -': runtime: O(n^1) [z'], size: O(1) [0] minus: runtime: O(1) [0], size: O(n^1) [z] TWICE: runtime: O(n^1) [z], size: O(1) [0] MIN: runtime: O(n^1) [z'], size: O(1) [0] max: runtime: O(1) [0], size: O(n^1) [z + z'] min: runtime: O(1) [0], size: O(n^1) [z'] p: runtime: O(1) [0], size: O(n^1) [z] ---------------------------------------- (173) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: MAX after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (174) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ z' }-> 1 + s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 + s16 }-> 1 + F(s13, s30) + s17 + MAX(1 + (z - 1), 1 + (z' - 1)) :|: s30 >= 0, s30 <= s15, s12 >= 0, s12 <= 1 + (z' - 1), s13 >= 0, s13 <= s6, s14 >= 0, s14 <= z' - 1, s15 >= 0, s15 <= 2 * s14, s16 >= 0, s16 <= 1 + (z' - 1), s17 >= 0, s17 <= 0, s6 >= 0, s6 <= 1 + (z' - 1) + (1 + (z - 1)), s7 >= 0, s7 <= 1 + (z' - 1) + (1 + (z - 1)), z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 + s22 + z' }-> 1 + F(s19, s31) + s23 + s3 :|: s31 >= 0, s31 <= s21, s18 >= 0, s18 <= 1 + (z' - 1), s19 >= 0, s19 <= s8, s20 >= 0, s20 <= z' - 1, s21 >= 0, s21 <= 2 * s20, s22 >= 0, s22 <= 1 + (z' - 1), s23 >= 0, s23 <= 0, s8 >= 0, s8 <= 1 + (z' - 1) + (1 + (z - 1)), s9 >= 0, s9 <= 1 + (z' - 1) + (1 + (z - 1)), s3 >= 0, s3 <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ s28 + z' }-> 1 + F(s25, s32) + s29 + s4 :|: s32 >= 0, s32 <= s27, s24 >= 0, s24 <= 1 + (z' - 1), s25 >= 0, s25 <= s10, s26 >= 0, s26 <= z' - 1, s27 >= 0, s27 <= 2 * s26, s28 >= 0, s28 <= z' - 1, s29 >= 0, s29 <= 0, s10 >= 0, s10 <= 1 + (z' - 1) + (1 + (z - 1)), s4 >= 0, s4 <= 0, z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ 1 }-> 1 + MAX(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ z' }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ z }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + s5 :|: s5 >= 0, s5 <= z' - 1 + (z - 1), z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + s11 :|: s11 >= 0, s11 <= z' - 1, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= z - 1, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {MAX}, {F} Previous analysis results are: twice: runtime: O(1) [0], size: O(n^1) [2*z] -': runtime: O(n^1) [z'], size: O(1) [0] minus: runtime: O(1) [0], size: O(n^1) [z] TWICE: runtime: O(n^1) [z], size: O(1) [0] MIN: runtime: O(n^1) [z'], size: O(1) [0] max: runtime: O(1) [0], size: O(n^1) [z + z'] min: runtime: O(1) [0], size: O(n^1) [z'] p: runtime: O(1) [0], size: O(n^1) [z] MAX: runtime: ?, size: O(1) [0] ---------------------------------------- (175) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: MAX after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: z' ---------------------------------------- (176) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ z' }-> 1 + s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 + s16 }-> 1 + F(s13, s30) + s17 + MAX(1 + (z - 1), 1 + (z' - 1)) :|: s30 >= 0, s30 <= s15, s12 >= 0, s12 <= 1 + (z' - 1), s13 >= 0, s13 <= s6, s14 >= 0, s14 <= z' - 1, s15 >= 0, s15 <= 2 * s14, s16 >= 0, s16 <= 1 + (z' - 1), s17 >= 0, s17 <= 0, s6 >= 0, s6 <= 1 + (z' - 1) + (1 + (z - 1)), s7 >= 0, s7 <= 1 + (z' - 1) + (1 + (z - 1)), z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 + s22 + z' }-> 1 + F(s19, s31) + s23 + s3 :|: s31 >= 0, s31 <= s21, s18 >= 0, s18 <= 1 + (z' - 1), s19 >= 0, s19 <= s8, s20 >= 0, s20 <= z' - 1, s21 >= 0, s21 <= 2 * s20, s22 >= 0, s22 <= 1 + (z' - 1), s23 >= 0, s23 <= 0, s8 >= 0, s8 <= 1 + (z' - 1) + (1 + (z - 1)), s9 >= 0, s9 <= 1 + (z' - 1) + (1 + (z - 1)), s3 >= 0, s3 <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ s28 + z' }-> 1 + F(s25, s32) + s29 + s4 :|: s32 >= 0, s32 <= s27, s24 >= 0, s24 <= 1 + (z' - 1), s25 >= 0, s25 <= s10, s26 >= 0, s26 <= z' - 1, s27 >= 0, s27 <= 2 * s26, s28 >= 0, s28 <= z' - 1, s29 >= 0, s29 <= 0, s10 >= 0, s10 <= 1 + (z' - 1) + (1 + (z - 1)), s4 >= 0, s4 <= 0, z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ 1 }-> 1 + MAX(z - 1, z' - 1) :|: z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ z' }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ z }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + s5 :|: s5 >= 0, s5 <= z' - 1 + (z - 1), z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + s11 :|: s11 >= 0, s11 <= z' - 1, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= z - 1, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {F} Previous analysis results are: twice: runtime: O(1) [0], size: O(n^1) [2*z] -': runtime: O(n^1) [z'], size: O(1) [0] minus: runtime: O(1) [0], size: O(n^1) [z] TWICE: runtime: O(n^1) [z], size: O(1) [0] MIN: runtime: O(n^1) [z'], size: O(1) [0] max: runtime: O(1) [0], size: O(n^1) [z + z'] min: runtime: O(1) [0], size: O(n^1) [z'] p: runtime: O(1) [0], size: O(n^1) [z] MAX: runtime: O(n^1) [z'], size: O(1) [0] ---------------------------------------- (177) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (178) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ z' }-> 1 + s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 + s16 + z' }-> 1 + F(s13, s30) + s17 + s34 :|: s34 >= 0, s34 <= 0, s30 >= 0, s30 <= s15, s12 >= 0, s12 <= 1 + (z' - 1), s13 >= 0, s13 <= s6, s14 >= 0, s14 <= z' - 1, s15 >= 0, s15 <= 2 * s14, s16 >= 0, s16 <= 1 + (z' - 1), s17 >= 0, s17 <= 0, s6 >= 0, s6 <= 1 + (z' - 1) + (1 + (z - 1)), s7 >= 0, s7 <= 1 + (z' - 1) + (1 + (z - 1)), z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 + s22 + z' }-> 1 + F(s19, s31) + s23 + s3 :|: s31 >= 0, s31 <= s21, s18 >= 0, s18 <= 1 + (z' - 1), s19 >= 0, s19 <= s8, s20 >= 0, s20 <= z' - 1, s21 >= 0, s21 <= 2 * s20, s22 >= 0, s22 <= 1 + (z' - 1), s23 >= 0, s23 <= 0, s8 >= 0, s8 <= 1 + (z' - 1) + (1 + (z - 1)), s9 >= 0, s9 <= 1 + (z' - 1) + (1 + (z - 1)), s3 >= 0, s3 <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ s28 + z' }-> 1 + F(s25, s32) + s29 + s4 :|: s32 >= 0, s32 <= s27, s24 >= 0, s24 <= 1 + (z' - 1), s25 >= 0, s25 <= s10, s26 >= 0, s26 <= z' - 1, s27 >= 0, s27 <= 2 * s26, s28 >= 0, s28 <= z' - 1, s29 >= 0, s29 <= 0, s10 >= 0, s10 <= 1 + (z' - 1) + (1 + (z - 1)), s4 >= 0, s4 <= 0, z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ z' }-> 1 + s33 :|: s33 >= 0, s33 <= 0, z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ z' }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ z }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + s5 :|: s5 >= 0, s5 <= z' - 1 + (z - 1), z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + s11 :|: s11 >= 0, s11 <= z' - 1, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= z - 1, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {F} Previous analysis results are: twice: runtime: O(1) [0], size: O(n^1) [2*z] -': runtime: O(n^1) [z'], size: O(1) [0] minus: runtime: O(1) [0], size: O(n^1) [z] TWICE: runtime: O(n^1) [z], size: O(1) [0] MIN: runtime: O(n^1) [z'], size: O(1) [0] max: runtime: O(1) [0], size: O(n^1) [z + z'] min: runtime: O(1) [0], size: O(n^1) [z'] p: runtime: O(1) [0], size: O(n^1) [z] MAX: runtime: O(n^1) [z'], size: O(1) [0] ---------------------------------------- (179) 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: 0 ---------------------------------------- (180) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ z' }-> 1 + s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 + s16 + z' }-> 1 + F(s13, s30) + s17 + s34 :|: s34 >= 0, s34 <= 0, s30 >= 0, s30 <= s15, s12 >= 0, s12 <= 1 + (z' - 1), s13 >= 0, s13 <= s6, s14 >= 0, s14 <= z' - 1, s15 >= 0, s15 <= 2 * s14, s16 >= 0, s16 <= 1 + (z' - 1), s17 >= 0, s17 <= 0, s6 >= 0, s6 <= 1 + (z' - 1) + (1 + (z - 1)), s7 >= 0, s7 <= 1 + (z' - 1) + (1 + (z - 1)), z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 + s22 + z' }-> 1 + F(s19, s31) + s23 + s3 :|: s31 >= 0, s31 <= s21, s18 >= 0, s18 <= 1 + (z' - 1), s19 >= 0, s19 <= s8, s20 >= 0, s20 <= z' - 1, s21 >= 0, s21 <= 2 * s20, s22 >= 0, s22 <= 1 + (z' - 1), s23 >= 0, s23 <= 0, s8 >= 0, s8 <= 1 + (z' - 1) + (1 + (z - 1)), s9 >= 0, s9 <= 1 + (z' - 1) + (1 + (z - 1)), s3 >= 0, s3 <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ s28 + z' }-> 1 + F(s25, s32) + s29 + s4 :|: s32 >= 0, s32 <= s27, s24 >= 0, s24 <= 1 + (z' - 1), s25 >= 0, s25 <= s10, s26 >= 0, s26 <= z' - 1, s27 >= 0, s27 <= 2 * s26, s28 >= 0, s28 <= z' - 1, s29 >= 0, s29 <= 0, s10 >= 0, s10 <= 1 + (z' - 1) + (1 + (z - 1)), s4 >= 0, s4 <= 0, z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ z' }-> 1 + s33 :|: s33 >= 0, s33 <= 0, z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ z' }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ z }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + s5 :|: s5 >= 0, s5 <= z' - 1 + (z - 1), z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + s11 :|: s11 >= 0, s11 <= z' - 1, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= z - 1, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {F} Previous analysis results are: twice: runtime: O(1) [0], size: O(n^1) [2*z] -': runtime: O(n^1) [z'], size: O(1) [0] minus: runtime: O(1) [0], size: O(n^1) [z] TWICE: runtime: O(n^1) [z], size: O(1) [0] MIN: runtime: O(n^1) [z'], size: O(1) [0] max: runtime: O(1) [0], size: O(n^1) [z + z'] min: runtime: O(1) [0], size: O(n^1) [z'] p: runtime: O(1) [0], size: O(n^1) [z] MAX: runtime: O(n^1) [z'], size: O(1) [0] F: runtime: ?, size: O(1) [0] ---------------------------------------- (181) 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: ? ---------------------------------------- (182) Obligation: Complexity RNTS consisting of the following rules: -'(z, z') -{ z' }-> 1 + s' :|: s' >= 0, s' <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 + s16 + z' }-> 1 + F(s13, s30) + s17 + s34 :|: s34 >= 0, s34 <= 0, s30 >= 0, s30 <= s15, s12 >= 0, s12 <= 1 + (z' - 1), s13 >= 0, s13 <= s6, s14 >= 0, s14 <= z' - 1, s15 >= 0, s15 <= 2 * s14, s16 >= 0, s16 <= 1 + (z' - 1), s17 >= 0, s17 <= 0, s6 >= 0, s6 <= 1 + (z' - 1) + (1 + (z - 1)), s7 >= 0, s7 <= 1 + (z' - 1) + (1 + (z - 1)), z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ 1 + s22 + z' }-> 1 + F(s19, s31) + s23 + s3 :|: s31 >= 0, s31 <= s21, s18 >= 0, s18 <= 1 + (z' - 1), s19 >= 0, s19 <= s8, s20 >= 0, s20 <= z' - 1, s21 >= 0, s21 <= 2 * s20, s22 >= 0, s22 <= 1 + (z' - 1), s23 >= 0, s23 <= 0, s8 >= 0, s8 <= 1 + (z' - 1) + (1 + (z - 1)), s9 >= 0, s9 <= 1 + (z' - 1) + (1 + (z - 1)), s3 >= 0, s3 <= 0, z' - 1 >= 0, z - 1 >= 0 F(z, z') -{ s28 + z' }-> 1 + F(s25, s32) + s29 + s4 :|: s32 >= 0, s32 <= s27, s24 >= 0, s24 <= 1 + (z' - 1), s25 >= 0, s25 <= s10, s26 >= 0, s26 <= z' - 1, s27 >= 0, s27 <= 2 * s26, s28 >= 0, s28 <= z' - 1, s29 >= 0, s29 <= 0, s10 >= 0, s10 <= 1 + (z' - 1) + (1 + (z - 1)), s4 >= 0, s4 <= 0, z' - 1 >= 0, z - 1 >= 0 MAX(z, z') -{ z' }-> 1 + s33 :|: s33 >= 0, s33 <= 0, z' - 1 >= 0, z - 1 >= 0 MIN(z, z') -{ z' }-> 1 + s2 :|: s2 >= 0, s2 <= 0, z' - 1 >= 0, z - 1 >= 0 TWICE(z) -{ z }-> 1 + s1 :|: s1 >= 0, s1 <= 0, z - 1 >= 0 max(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 max(z, z') -{ 0 }-> z' :|: z' >= 0, z = 0 max(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 max(z, z') -{ 0 }-> 1 + s5 :|: s5 >= 0, s5 <= z' - 1 + (z - 1), z' - 1 >= 0, z - 1 >= 0 min(z, z') -{ 0 }-> 0 :|: z' >= 0, z = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 min(z, z') -{ 0 }-> 1 + s11 :|: s11 >= 0, s11 <= z' - 1, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> s'' :|: s'' >= 0, s'' <= z - 1, z' - 1 >= 0, z - 1 >= 0 minus(z, z') -{ 0 }-> z :|: z >= 0, z' = 0 minus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 0 }-> z - 1 :|: z - 1 >= 0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: z >= 0 twice(z) -{ 0 }-> 1 + (1 + s) :|: s >= 0, s <= 2 * (z - 1), z - 1 >= 0 Function symbols to be analyzed: {F} Previous analysis results are: twice: runtime: O(1) [0], size: O(n^1) [2*z] -': runtime: O(n^1) [z'], size: O(1) [0] minus: runtime: O(1) [0], size: O(n^1) [z] TWICE: runtime: O(n^1) [z], size: O(1) [0] MIN: runtime: O(n^1) [z'], size: O(1) [0] max: runtime: O(1) [0], size: O(n^1) [z + z'] min: runtime: O(1) [0], size: O(n^1) [z'] p: runtime: O(1) [0], size: O(n^1) [z] MAX: runtime: O(n^1) [z'], size: O(1) [0] F: runtime: INF, size: O(1) [0] ---------------------------------------- (183) 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: minus(v0, v1) -> null_minus [0] max(v0, v1) -> null_max [0] min(v0, v1) -> null_min [0] p(v0) -> null_p [0] twice(v0) -> null_twice [0] MIN(v0, v1) -> null_MIN [0] MAX(v0, v1) -> null_MAX [0] TWICE(v0) -> null_TWICE [0] -'(v0, v1) -> null_-' [0] F(v0, v1) -> null_F [0] And the following fresh constants: null_minus, null_max, null_min, null_p, null_twice, null_MIN, null_MAX, null_TWICE, null_-', null_F ---------------------------------------- (184) 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: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) [1] MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) [1] TWICE(s(z0)) -> c7(TWICE(z0)) [1] -'(s(z0), s(z1)) -> c9(-'(z0, z1)) [1] F(s(z0), s(z1)) -> c11(F(minus(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) [1] F(s(z0), s(z1)) -> c12(F(minus(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) [1] F(s(z0), s(z1)) -> c13(F(minus(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) [1] minus(z0, 0) -> z0 [0] minus(s(z0), s(z1)) -> minus(z0, z1) [0] max(s(z0), s(z1)) -> s(max(z0, z1)) [0] max(0, z0) -> z0 [0] max(z0, 0) -> z0 [0] min(s(z0), s(z1)) -> s(min(z0, z1)) [0] min(0, z0) -> 0 [0] min(z0, 0) -> 0 [0] p(s(z0)) -> z0 [0] twice(0) -> 0 [0] twice(s(z0)) -> s(s(twice(z0))) [0] minus(v0, v1) -> null_minus [0] max(v0, v1) -> null_max [0] min(v0, v1) -> null_min [0] p(v0) -> null_p [0] twice(v0) -> null_twice [0] MIN(v0, v1) -> null_MIN [0] MAX(v0, v1) -> null_MAX [0] TWICE(v0) -> null_TWICE [0] -'(v0, v1) -> null_-' [0] F(v0, v1) -> null_F [0] The TRS has the following type information: MIN :: s:0:null_minus:null_max:null_min:null_p:null_twice -> s:0:null_minus:null_max:null_min:null_p:null_twice -> c2:null_MIN s :: s:0:null_minus:null_max:null_min:null_p:null_twice -> s:0:null_minus:null_max:null_min:null_p:null_twice c2 :: c2:null_MIN -> c2:null_MIN MAX :: s:0:null_minus:null_max:null_min:null_p:null_twice -> s:0:null_minus:null_max:null_min:null_p:null_twice -> c5:null_MAX c5 :: c5:null_MAX -> c5:null_MAX TWICE :: s:0:null_minus:null_max:null_min:null_p:null_twice -> c7:null_TWICE c7 :: c7:null_TWICE -> c7:null_TWICE -' :: s:0:null_minus:null_max:null_min:null_p:null_twice -> s:0:null_minus:null_max:null_min:null_p:null_twice -> c9:null_-' c9 :: c9:null_-' -> c9:null_-' F :: s:0:null_minus:null_max:null_min:null_p:null_twice -> s:0:null_minus:null_max:null_min:null_p:null_twice -> c11:c12:c13:null_F c11 :: c11:c12:c13:null_F -> c9:null_-' -> c5:null_MAX -> c11:c12:c13:null_F minus :: s:0:null_minus:null_max:null_min:null_p:null_twice -> s:0:null_minus:null_max:null_min:null_p:null_twice -> s:0:null_minus:null_max:null_min:null_p:null_twice max :: s:0:null_minus:null_max:null_min:null_p:null_twice -> s:0:null_minus:null_max:null_min:null_p:null_twice -> s:0:null_minus:null_max:null_min:null_p:null_twice min :: s:0:null_minus:null_max:null_min:null_p:null_twice -> s:0:null_minus:null_max:null_min:null_p:null_twice -> s:0:null_minus:null_max:null_min:null_p:null_twice p :: s:0:null_minus:null_max:null_min:null_p:null_twice -> s:0:null_minus:null_max:null_min:null_p:null_twice twice :: s:0:null_minus:null_max:null_min:null_p:null_twice -> s:0:null_minus:null_max:null_min:null_p:null_twice c12 :: c11:c12:c13:null_F -> c9:null_-' -> c2:null_MIN -> c11:c12:c13:null_F c13 :: c11:c12:c13:null_F -> c7:null_TWICE -> c2:null_MIN -> c11:c12:c13:null_F 0 :: s:0:null_minus:null_max:null_min:null_p:null_twice null_minus :: s:0:null_minus:null_max:null_min:null_p:null_twice null_max :: s:0:null_minus:null_max:null_min:null_p:null_twice null_min :: s:0:null_minus:null_max:null_min:null_p:null_twice null_p :: s:0:null_minus:null_max:null_min:null_p:null_twice null_twice :: s:0:null_minus:null_max:null_min:null_p:null_twice null_MIN :: c2:null_MIN null_MAX :: c5:null_MAX null_TWICE :: c7:null_TWICE null_-' :: c9:null_-' null_F :: c11:c12:c13:null_F Rewrite Strategy: INNERMOST ---------------------------------------- (185) 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_minus => 0 null_max => 0 null_min => 0 null_p => 0 null_twice => 0 null_MIN => 0 null_MAX => 0 null_TWICE => 0 null_-' => 0 null_F => 0 ---------------------------------------- (186) 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) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 F(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + z0, 1 + z1), min(1 + z0, 1 + z1)), p(twice(min(z0, z1)))) + TWICE(min(z0, z1)) + MIN(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + z0, 1 + z1), min(1 + z0, 1 + z1)), p(twice(min(z0, z1)))) + -'(max(1 + z0, 1 + z1), min(1 + z0, 1 + z1)) + MIN(1 + z0, 1 + z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 F(z, z') -{ 1 }-> 1 + F(minus(max(1 + z0, 1 + z1), min(1 + z0, 1 + z1)), p(twice(min(z0, z1)))) + -'(max(1 + z0, 1 + z1), min(1 + z0, 1 + z1)) + MAX(1 + z0, 1 + z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 MAX(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 MAX(z, z') -{ 1 }-> 1 + MAX(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 MIN(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 MIN(z, z') -{ 1 }-> 1 + MIN(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 TWICE(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 TWICE(z) -{ 1 }-> 1 + TWICE(z0) :|: z = 1 + z0, z0 >= 0 max(z, z') -{ 0 }-> z0 :|: z0 >= 0, z = 0, z' = z0 max(z, z') -{ 0 }-> z0 :|: z = z0, z0 >= 0, z' = 0 max(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 max(z, z') -{ 0 }-> 1 + max(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 min(z, z') -{ 0 }-> 0 :|: z0 >= 0, z = 0, z' = z0 min(z, z') -{ 0 }-> 0 :|: z = z0, z0 >= 0, z' = 0 min(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 min(z, z') -{ 0 }-> 1 + min(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 minus(z, z') -{ 0 }-> z0 :|: z = z0, z0 >= 0, z' = 0 minus(z, z') -{ 0 }-> minus(z0, z1) :|: z1 >= 0, z = 1 + z0, z0 >= 0, z' = 1 + z1 minus(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 p(z) -{ 0 }-> z0 :|: z = 1 + z0, z0 >= 0 p(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 twice(z) -{ 0 }-> 0 :|: z = 0 twice(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 twice(z) -{ 0 }-> 1 + (1 + twice(z0)) :|: z = 1 + z0, z0 >= 0 Only complete derivations are relevant for the runtime complexity. ---------------------------------------- (187) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) by F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) ---------------------------------------- (188) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) K tuples:none Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c12_3, c13_3, c11_3 ---------------------------------------- (189) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) by F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) ---------------------------------------- (190) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) K tuples:none Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c13_3, c11_3, c12_3 ---------------------------------------- (191) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) by F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0)), MIN(0, z0)) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0)), MIN(z0, 0)) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) ---------------------------------------- (192) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0)), MIN(0, z0)) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0)), MIN(z0, 0)) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0)), MIN(0, z0)) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0)), MIN(z0, 0)) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) K tuples:none Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c11_3, c12_3, c13_3 ---------------------------------------- (193) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (194) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) K tuples:none Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c11_3, c12_3, c13_3, c13_2 ---------------------------------------- (195) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) by F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) ---------------------------------------- (196) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) K tuples:none Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c11_3, c12_3, c13_3, c13_2 ---------------------------------------- (197) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) by F(s(0), s(x0)) -> c11(F(-(max(s(0), s(x0)), min(s(0), s(x0))), p(0)), -'(max(s(0), s(x0)), min(s(0), s(x0))), MAX(s(0), s(x0))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) ---------------------------------------- (198) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c11(F(-(max(s(0), s(x0)), min(s(0), s(x0))), p(0)), -'(max(s(0), s(x0)), min(s(0), s(x0))), MAX(s(0), s(x0))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c11(F(-(max(s(0), s(x0)), min(s(0), s(x0))), p(0)), -'(max(s(0), s(x0)), min(s(0), s(x0))), MAX(s(0), s(x0))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) K tuples:none Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c11_3, c12_3, c13_3, c13_2 ---------------------------------------- (199) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (200) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c11(-'(max(s(0), s(x0)), min(s(0), s(x0))), MAX(s(0), s(x0))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c11(-'(max(s(0), s(x0)), min(s(0), s(x0))), MAX(s(0), s(x0))) K tuples:none Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c11_3, c12_3, c13_3, c13_2, c11_2 ---------------------------------------- (201) CdtGraphSplitRhsProof (BOTH BOUNDS(ID, ID)) Split RHS of tuples not part of any SCC ---------------------------------------- (202) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) K tuples:none Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c11_3, c12_3, c13_3, c13_2, c_1 ---------------------------------------- (203) CdtRuleRemovalProof (UPPER BOUND(ADD(n^1))) Found a reduction pair which oriented the following tuples strictly. Hence they can be removed from S. F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) We considered the (Usable) Rules:none And the Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) The order we found is given by the following interpretation: Polynomial interpretation : POL(-(x_1, x_2)) = [1] + x_1 POL(-'(x_1, x_2)) = 0 POL(0) = 0 POL(F(x_1, x_2)) = [1] POL(MAX(x_1, x_2)) = 0 POL(MIN(x_1, x_2)) = 0 POL(TWICE(x_1)) = 0 POL(c(x_1)) = x_1 POL(c11(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c12(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c13(x_1, x_2)) = x_1 + x_2 POL(c13(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c2(x_1)) = x_1 POL(c5(x_1)) = x_1 POL(c7(x_1)) = x_1 POL(c9(x_1)) = x_1 POL(max(x_1, x_2)) = 0 POL(min(x_1, x_2)) = 0 POL(p(x_1)) = [1] + x_1 POL(s(x_1)) = 0 POL(twice(x_1)) = [1] + x_1 ---------------------------------------- (204) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c11_3, c12_3, c13_3, c13_2, c_1 ---------------------------------------- (205) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) by F(s(x0), s(0)) -> c11(F(-(max(s(x0), s(0)), min(s(x0), s(0))), p(0)), -'(max(s(x0), s(0)), min(s(x0), s(0))), MAX(s(x0), s(0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) ---------------------------------------- (206) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c11(F(-(max(s(x0), s(0)), min(s(x0), s(0))), p(0)), -'(max(s(x0), s(0)), min(s(x0), s(0))), MAX(s(x0), s(0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(x0), s(0)) -> c11(F(-(max(s(x0), s(0)), min(s(x0), s(0))), p(0)), -'(max(s(x0), s(0)), min(s(x0), s(0))), MAX(s(x0), s(0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c11_3, c12_3, c13_3, c13_2, c_1 ---------------------------------------- (207) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (208) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c11(-'(max(s(x0), s(0)), min(s(x0), s(0))), MAX(s(x0), s(0))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c11(-'(max(s(x0), s(0)), min(s(x0), s(0))), MAX(s(x0), s(0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c11_3, c12_3, c13_3, c13_2, c_1, c11_2 ---------------------------------------- (209) CdtGraphSplitRhsProof (BOTH BOUNDS(ID, ID)) Split RHS of tuples not part of any SCC ---------------------------------------- (210) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c11_3, c12_3, c13_3, c13_2, c_1, c1_1 ---------------------------------------- (211) CdtRuleRemovalProof (UPPER BOUND(ADD(n^1))) Found a reduction pair which oriented the following tuples strictly. Hence they can be removed from S. F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) We considered the (Usable) Rules:none And the Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) The order we found is given by the following interpretation: Polynomial interpretation : POL(-(x_1, x_2)) = [1] + x_1 POL(-'(x_1, x_2)) = 0 POL(0) = 0 POL(F(x_1, x_2)) = [1] POL(MAX(x_1, x_2)) = 0 POL(MIN(x_1, x_2)) = 0 POL(TWICE(x_1)) = 0 POL(c(x_1)) = x_1 POL(c1(x_1)) = x_1 POL(c11(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c12(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c13(x_1, x_2)) = x_1 + x_2 POL(c13(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c2(x_1)) = x_1 POL(c5(x_1)) = x_1 POL(c7(x_1)) = x_1 POL(c9(x_1)) = x_1 POL(max(x_1, x_2)) = 0 POL(min(x_1, x_2)) = 0 POL(p(x_1)) = [1] + x_1 POL(s(x_1)) = 0 POL(twice(x_1)) = [1] ---------------------------------------- (212) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c11_3, c12_3, c13_3, c13_2, c_1, c1_1 ---------------------------------------- (213) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace F(s(z0), s(z1)) -> c11(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) by F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(min(s(z0), s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) ---------------------------------------- (214) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c11_3, c12_3, c13_3, c13_2, c_1, c1_1 ---------------------------------------- (215) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) by F(s(s(z0)), s(s(z1))) -> c11(F(-(s(max(s(z0), s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) ---------------------------------------- (216) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c12_3, c13_3, c13_2, c11_3, c_1, c1_1 ---------------------------------------- (217) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) by F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) ---------------------------------------- (218) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c12_3, c13_3, c13_2, c11_3, c_1, c1_1 ---------------------------------------- (219) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) by F(s(0), s(x0)) -> c12(F(-(max(s(0), s(x0)), min(s(0), s(x0))), p(0)), -'(max(s(0), s(x0)), min(s(0), s(x0))), MIN(s(0), s(x0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) ---------------------------------------- (220) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c12(F(-(max(s(0), s(x0)), min(s(0), s(x0))), p(0)), -'(max(s(0), s(x0)), min(s(0), s(x0))), MIN(s(0), s(x0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c12(F(-(max(s(0), s(x0)), min(s(0), s(x0))), p(0)), -'(max(s(0), s(x0)), min(s(0), s(x0))), MIN(s(0), s(x0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c12_3, c13_3, c13_2, c11_3, c_1, c1_1 ---------------------------------------- (221) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (222) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c12(-'(max(s(0), s(x0)), min(s(0), s(x0))), MIN(s(0), s(x0))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c12(-'(max(s(0), s(x0)), min(s(0), s(x0))), MIN(s(0), s(x0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c12_3, c13_3, c13_2, c11_3, c_1, c1_1, c12_2 ---------------------------------------- (223) CdtGraphSplitRhsProof (BOTH BOUNDS(ID, ID)) Split RHS of tuples not part of any SCC ---------------------------------------- (224) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c12_3, c13_3, c13_2, c11_3, c_1, c1_1, c3_1 ---------------------------------------- (225) CdtRuleRemovalProof (UPPER BOUND(ADD(n^1))) Found a reduction pair which oriented the following tuples strictly. Hence they can be removed from S. F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) We considered the (Usable) Rules:none And the Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) The order we found is given by the following interpretation: Polynomial interpretation : POL(-(x_1, x_2)) = [1] + x_1 POL(-'(x_1, x_2)) = 0 POL(0) = 0 POL(F(x_1, x_2)) = [1] POL(MAX(x_1, x_2)) = 0 POL(MIN(x_1, x_2)) = 0 POL(TWICE(x_1)) = 0 POL(c(x_1)) = x_1 POL(c1(x_1)) = x_1 POL(c11(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c12(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c13(x_1, x_2)) = x_1 + x_2 POL(c13(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c2(x_1)) = x_1 POL(c3(x_1)) = x_1 POL(c5(x_1)) = x_1 POL(c7(x_1)) = x_1 POL(c9(x_1)) = x_1 POL(max(x_1, x_2)) = 0 POL(min(x_1, x_2)) = 0 POL(p(x_1)) = [1] + x_1 POL(s(x_1)) = 0 POL(twice(x_1)) = [1] + x_1 ---------------------------------------- (226) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c12_3, c13_3, c13_2, c11_3, c_1, c1_1, c3_1 ---------------------------------------- (227) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) by F(s(x0), s(0)) -> c12(F(-(max(s(x0), s(0)), min(s(x0), s(0))), p(0)), -'(max(s(x0), s(0)), min(s(x0), s(0))), MIN(s(x0), s(0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) ---------------------------------------- (228) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(x0), s(0)) -> c12(F(-(max(s(x0), s(0)), min(s(x0), s(0))), p(0)), -'(max(s(x0), s(0)), min(s(x0), s(0))), MIN(s(x0), s(0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(x0), s(0)) -> c12(F(-(max(s(x0), s(0)), min(s(x0), s(0))), p(0)), -'(max(s(x0), s(0)), min(s(x0), s(0))), MIN(s(x0), s(0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c12_3, c13_3, c13_2, c11_3, c_1, c1_1, c3_1 ---------------------------------------- (229) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (230) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(x0), s(0)) -> c12(-'(max(s(x0), s(0)), min(s(x0), s(0))), MIN(s(x0), s(0))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(x0), s(0)) -> c12(-'(max(s(x0), s(0)), min(s(x0), s(0))), MIN(s(x0), s(0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c12_3, c13_3, c13_2, c11_3, c_1, c1_1, c3_1, c12_2 ---------------------------------------- (231) CdtGraphSplitRhsProof (BOTH BOUNDS(ID, ID)) Split RHS of tuples not part of any SCC ---------------------------------------- (232) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c12_3, c13_3, c13_2, c11_3, c_1, c1_1, c3_1, c4_1 ---------------------------------------- (233) CdtRuleRemovalProof (UPPER BOUND(ADD(n^1))) Found a reduction pair which oriented the following tuples strictly. Hence they can be removed from S. F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) We considered the (Usable) Rules:none And the Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) The order we found is given by the following interpretation: Polynomial interpretation : POL(-(x_1, x_2)) = [1] + x_1 POL(-'(x_1, x_2)) = 0 POL(0) = 0 POL(F(x_1, x_2)) = [1] POL(MAX(x_1, x_2)) = 0 POL(MIN(x_1, x_2)) = 0 POL(TWICE(x_1)) = 0 POL(c(x_1)) = x_1 POL(c1(x_1)) = x_1 POL(c11(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c12(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c13(x_1, x_2)) = x_1 + x_2 POL(c13(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c2(x_1)) = x_1 POL(c3(x_1)) = x_1 POL(c4(x_1)) = x_1 POL(c5(x_1)) = x_1 POL(c7(x_1)) = x_1 POL(c9(x_1)) = x_1 POL(max(x_1, x_2)) = 0 POL(min(x_1, x_2)) = 0 POL(p(x_1)) = [1] + x_1 POL(s(x_1)) = 0 POL(twice(x_1)) = [1] + x_1 ---------------------------------------- (234) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c12_3, c13_3, c13_2, c11_3, c_1, c1_1, c3_1, c4_1 ---------------------------------------- (235) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace F(s(z0), s(z1)) -> c12(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) by F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(min(s(z0), s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) ---------------------------------------- (236) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c12_3, c13_3, c13_2, c11_3, c_1, c1_1, c3_1, c4_1 ---------------------------------------- (237) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) by F(s(s(z0)), s(s(z1))) -> c12(F(-(s(max(s(z0), s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) ---------------------------------------- (238) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c13_3, c13_2, c11_3, c_1, c1_1, c12_3, c3_1, c4_1 ---------------------------------------- (239) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) by F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) ---------------------------------------- (240) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c13_3, c13_2, c11_3, c_1, c1_1, c12_3, c3_1, c4_1 ---------------------------------------- (241) CdtGraphSplitRhsProof (BOTH BOUNDS(ID, ID)) Split RHS of tuples not part of any SCC ---------------------------------------- (242) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c13_3, c13_2, c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c6_1 ---------------------------------------- (243) CdtRuleRemovalProof (UPPER BOUND(ADD(n^1))) Found a reduction pair which oriented the following tuples strictly. Hence they can be removed from S. F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) We considered the (Usable) Rules:none And the Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) The order we found is given by the following interpretation: Polynomial interpretation : POL(-(x_1, x_2)) = [1] + x_1 POL(-'(x_1, x_2)) = 0 POL(0) = 0 POL(F(x_1, x_2)) = [1] POL(MAX(x_1, x_2)) = 0 POL(MIN(x_1, x_2)) = 0 POL(TWICE(x_1)) = 0 POL(c(x_1)) = x_1 POL(c1(x_1)) = x_1 POL(c11(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c12(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c13(x_1, x_2)) = x_1 + x_2 POL(c13(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c2(x_1)) = x_1 POL(c3(x_1)) = x_1 POL(c4(x_1)) = x_1 POL(c5(x_1)) = x_1 POL(c6(x_1)) = x_1 POL(c7(x_1)) = x_1 POL(c9(x_1)) = x_1 POL(max(x_1, x_2)) = 0 POL(min(x_1, x_2)) = 0 POL(p(x_1)) = [1] + x_1 POL(s(x_1)) = 0 POL(twice(x_1)) = [1] + x_1 ---------------------------------------- (244) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c13_3, c13_2, c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c6_1 ---------------------------------------- (245) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace F(s(z0), s(z1)) -> c13(F(-(max(s(z0), s(z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) by F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(min(s(z0), s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0)), MIN(0, z0)) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0)), MIN(z0, 0)) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0)), MIN(0, z0)) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0)), MIN(z0, 0)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) ---------------------------------------- (246) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0)), MIN(0, z0)) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0)), MIN(z0, 0)) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0)), MIN(0, z0)) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0)), MIN(z0, 0)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0)), MIN(0, z0)) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0)), MIN(z0, 0)) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0)), MIN(0, z0)) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0)), MIN(z0, 0)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c13_3, c13_2, c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c6_1 ---------------------------------------- (247) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 4 trailing tuple parts ---------------------------------------- (248) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c13_3, c13_2, c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c6_1 ---------------------------------------- (249) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), min(s(z0), s(z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) by F(s(s(z0)), s(s(z1))) -> c13(F(-(s(max(s(z0), s(z1))), min(s(s(z0)), s(s(z1)))), p(twice(s(min(z0, z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0)), MIN(0, z0)) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0)), MIN(z0, 0)) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0)), MIN(0, z0)) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0)), MIN(z0, 0)) ---------------------------------------- (250) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0)), MIN(0, z0)) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0)), MIN(z0, 0)) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0)), MIN(0, z0)) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0)), MIN(z0, 0)) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0)), MIN(0, z0)) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0)), MIN(z0, 0)) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0)), MIN(0, z0)) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0)), MIN(z0, 0)) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c13_2, c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1 ---------------------------------------- (251) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 4 trailing tuple parts ---------------------------------------- (252) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c13_2, c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1 ---------------------------------------- (253) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) by F(s(0), s(x0)) -> c13(F(-(max(s(0), s(x0)), min(s(0), s(x0))), p(0)), TWICE(min(0, x0))) F(s(0), s(z1)) -> c13(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), TWICE(min(0, z1))) F(s(0), s(z1)) -> c13(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), TWICE(min(0, z1))) ---------------------------------------- (254) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(F(-(max(s(0), s(x0)), min(s(0), s(x0))), p(0)), TWICE(min(0, x0))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(F(-(max(s(0), s(x0)), min(s(0), s(x0))), p(0)), TWICE(min(0, x0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c13_2, c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1 ---------------------------------------- (255) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (256) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c13_2, c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_1 ---------------------------------------- (257) CdtRuleRemovalProof (UPPER BOUND(ADD(n^1))) Found a reduction pair which oriented the following tuples strictly. Hence they can be removed from S. F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) We considered the (Usable) Rules:none And the Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) The order we found is given by the following interpretation: Polynomial interpretation : POL(-(x_1, x_2)) = [1] + x_1 POL(-'(x_1, x_2)) = 0 POL(0) = 0 POL(F(x_1, x_2)) = [1] POL(MAX(x_1, x_2)) = 0 POL(MIN(x_1, x_2)) = 0 POL(TWICE(x_1)) = 0 POL(c(x_1)) = x_1 POL(c1(x_1)) = x_1 POL(c11(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c12(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c13(x_1)) = x_1 POL(c13(x_1, x_2)) = x_1 + x_2 POL(c13(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c2(x_1)) = x_1 POL(c3(x_1)) = x_1 POL(c4(x_1)) = x_1 POL(c5(x_1)) = x_1 POL(c6(x_1)) = x_1 POL(c7(x_1)) = x_1 POL(c9(x_1)) = x_1 POL(max(x_1, x_2)) = 0 POL(min(x_1, x_2)) = 0 POL(p(x_1)) = [1] + x_1 POL(s(x_1)) = 0 POL(twice(x_1)) = [1] + x_1 ---------------------------------------- (258) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c13_2, c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_1 ---------------------------------------- (259) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) by F(s(x0), s(0)) -> c13(F(-(max(s(x0), s(0)), min(s(x0), s(0))), p(0)), TWICE(min(x0, 0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) ---------------------------------------- (260) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(F(-(max(s(x0), s(0)), min(s(x0), s(0))), p(0)), TWICE(min(x0, 0))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(x0), s(0)) -> c13(F(-(max(s(x0), s(0)), min(s(x0), s(0))), p(0)), TWICE(min(x0, 0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c13_1 ---------------------------------------- (261) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (262) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c13_1 ---------------------------------------- (263) CdtRuleRemovalProof (UPPER BOUND(ADD(n^1))) Found a reduction pair which oriented the following tuples strictly. Hence they can be removed from S. F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) We considered the (Usable) Rules:none And the Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) The order we found is given by the following interpretation: Polynomial interpretation : POL(-(x_1, x_2)) = [1] + x_1 POL(-'(x_1, x_2)) = 0 POL(0) = 0 POL(F(x_1, x_2)) = [1] POL(MAX(x_1, x_2)) = 0 POL(MIN(x_1, x_2)) = 0 POL(TWICE(x_1)) = 0 POL(c(x_1)) = x_1 POL(c1(x_1)) = x_1 POL(c11(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c12(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c13(x_1)) = x_1 POL(c13(x_1, x_2)) = x_1 + x_2 POL(c13(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c2(x_1)) = x_1 POL(c3(x_1)) = x_1 POL(c4(x_1)) = x_1 POL(c5(x_1)) = x_1 POL(c6(x_1)) = x_1 POL(c7(x_1)) = x_1 POL(c9(x_1)) = x_1 POL(max(x_1, x_2)) = 0 POL(min(x_1, x_2)) = 0 POL(p(x_1)) = [1] + x_1 POL(s(x_1)) = 0 POL(twice(x_1)) = [1] + x_1 ---------------------------------------- (264) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) S tuples: MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MIN_2, MAX_2, TWICE_1, -'_2, F_2 Compound Symbols: c2_1, c5_1, c7_1, c9_1, c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c13_1 ---------------------------------------- (265) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace MIN(s(z0), s(z1)) -> c2(MIN(z0, z1)) by MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) ---------------------------------------- (266) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) S tuples: MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MAX_2, TWICE_1, -'_2, F_2, MIN_2 Compound Symbols: c5_1, c7_1, c9_1, c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c13_1, c2_1 ---------------------------------------- (267) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: F(s(x0), s(0)) -> c4(MIN(s(x0), s(0))) F(s(0), s(x0)) -> c3(MIN(s(0), s(x0))) ---------------------------------------- (268) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) S tuples: MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MIN(s(0), s(z1))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0))), MIN(s(0), s(z0))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0))), MIN(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MAX_2, TWICE_1, -'_2, F_2, MIN_2 Compound Symbols: c5_1, c7_1, c9_1, c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c13_1, c2_1 ---------------------------------------- (269) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 14 trailing tuple parts ---------------------------------------- (270) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) S tuples: MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MAX_2, TWICE_1, -'_2, F_2, MIN_2 Compound Symbols: c5_1, c7_1, c9_1, c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c13_1, c2_1, c12_2 ---------------------------------------- (271) CdtRewritingProof (BOTH BOUNDS(ID, ID)) Used rewriting to replace F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) by F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) ---------------------------------------- (272) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) S tuples: MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MAX_2, TWICE_1, -'_2, F_2, MIN_2 Compound Symbols: c5_1, c7_1, c9_1, c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c13_1, c2_1, c12_2 ---------------------------------------- (273) CdtRewritingProof (BOTH BOUNDS(ID, ID)) Used rewriting to replace F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) by F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) ---------------------------------------- (274) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) S tuples: MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MAX_2, TWICE_1, -'_2, F_2, MIN_2 Compound Symbols: c5_1, c7_1, c9_1, c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c13_1, c2_1, c12_2 ---------------------------------------- (275) CdtRewritingProof (BOTH BOUNDS(ID, ID)) Used rewriting to replace F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) by F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(0)), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) ---------------------------------------- (276) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(0)), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) S tuples: MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(0)), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MAX_2, TWICE_1, -'_2, F_2, MIN_2 Compound Symbols: c5_1, c7_1, c9_1, c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c13_1, c2_1, c12_2 ---------------------------------------- (277) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (278) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c11(-'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) S tuples: MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c11(-'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MAX_2, TWICE_1, -'_2, F_2, MIN_2 Compound Symbols: c5_1, c7_1, c9_1, c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c13_1, c2_1, c12_2, c11_2 ---------------------------------------- (279) CdtGraphSplitRhsProof (BOTH BOUNDS(ID, ID)) Split RHS of tuples not part of any SCC ---------------------------------------- (280) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c8(MAX(s(0), s(z0))) S tuples: MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c8(MAX(s(0), s(z0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MAX_2, TWICE_1, -'_2, F_2, MIN_2 Compound Symbols: c5_1, c7_1, c9_1, c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c13_1, c2_1, c12_2, c8_1 ---------------------------------------- (281) CdtRuleRemovalProof (UPPER BOUND(ADD(n^1))) Found a reduction pair which oriented the following tuples strictly. Hence they can be removed from S. F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c8(MAX(s(0), s(z0))) We considered the (Usable) Rules:none And the Tuples: MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c8(MAX(s(0), s(z0))) The order we found is given by the following interpretation: Polynomial interpretation : POL(-(x_1, x_2)) = [1] + x_1 POL(-'(x_1, x_2)) = 0 POL(0) = 0 POL(F(x_1, x_2)) = [1] POL(MAX(x_1, x_2)) = 0 POL(MIN(x_1, x_2)) = 0 POL(TWICE(x_1)) = 0 POL(c(x_1)) = x_1 POL(c1(x_1)) = x_1 POL(c11(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c12(x_1, x_2)) = x_1 + x_2 POL(c12(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c13(x_1)) = x_1 POL(c13(x_1, x_2)) = x_1 + x_2 POL(c13(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c2(x_1)) = x_1 POL(c3(x_1)) = x_1 POL(c4(x_1)) = x_1 POL(c5(x_1)) = x_1 POL(c6(x_1)) = x_1 POL(c7(x_1)) = x_1 POL(c8(x_1)) = x_1 POL(c9(x_1)) = x_1 POL(max(x_1, x_2)) = 0 POL(min(x_1, x_2)) = 0 POL(p(x_1)) = [1] + x_1 POL(s(x_1)) = 0 POL(twice(x_1)) = [1] + x_1 ---------------------------------------- (282) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c8(MAX(s(0), s(z0))) S tuples: MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c8(MAX(s(0), s(z0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MAX_2, TWICE_1, -'_2, F_2, MIN_2 Compound Symbols: c5_1, c7_1, c9_1, c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c13_1, c2_1, c12_2, c8_1 ---------------------------------------- (283) CdtRewritingProof (BOTH BOUNDS(ID, ID)) Used rewriting to replace F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) by F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(0)), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) ---------------------------------------- (284) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c8(MAX(s(0), s(z0))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(0)), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) S tuples: MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(0)), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c8(MAX(s(0), s(z0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MAX_2, TWICE_1, -'_2, F_2, MIN_2 Compound Symbols: c5_1, c7_1, c9_1, c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c13_1, c2_1, c12_2, c8_1 ---------------------------------------- (285) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (286) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c8(MAX(s(0), s(z0))) F(s(0), s(z0)) -> c11(-'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) S tuples: MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c11(-'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c8(MAX(s(0), s(z0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MAX_2, TWICE_1, -'_2, F_2, MIN_2 Compound Symbols: c5_1, c7_1, c9_1, c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c13_1, c2_1, c12_2, c8_1, c11_2 ---------------------------------------- (287) CdtGraphSplitRhsProof (BOTH BOUNDS(ID, ID)) Split RHS of tuples not part of any SCC ---------------------------------------- (288) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c8(MAX(s(0), s(z0))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(MAX(s(0), s(z0))) S tuples: MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(MAX(s(0), s(z0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c8(MAX(s(0), s(z0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MAX_2, TWICE_1, -'_2, F_2, MIN_2 Compound Symbols: c5_1, c7_1, c9_1, c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c13_1, c2_1, c12_2, c8_1, c10_1 ---------------------------------------- (289) CdtRuleRemovalProof (UPPER BOUND(ADD(n^1))) Found a reduction pair which oriented the following tuples strictly. Hence they can be removed from S. F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(MAX(s(0), s(z0))) We considered the (Usable) Rules:none And the Tuples: MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c8(MAX(s(0), s(z0))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(MAX(s(0), s(z0))) The order we found is given by the following interpretation: Polynomial interpretation : POL(-(x_1, x_2)) = [1] + x_1 POL(-'(x_1, x_2)) = 0 POL(0) = 0 POL(F(x_1, x_2)) = [1] POL(MAX(x_1, x_2)) = 0 POL(MIN(x_1, x_2)) = 0 POL(TWICE(x_1)) = 0 POL(c(x_1)) = x_1 POL(c1(x_1)) = x_1 POL(c10(x_1)) = x_1 POL(c11(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c12(x_1, x_2)) = x_1 + x_2 POL(c12(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c13(x_1)) = x_1 POL(c13(x_1, x_2)) = x_1 + x_2 POL(c13(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c2(x_1)) = x_1 POL(c3(x_1)) = x_1 POL(c4(x_1)) = x_1 POL(c5(x_1)) = x_1 POL(c6(x_1)) = x_1 POL(c7(x_1)) = x_1 POL(c8(x_1)) = x_1 POL(c9(x_1)) = x_1 POL(max(x_1, x_2)) = 0 POL(min(x_1, x_2)) = 0 POL(p(x_1)) = [1] + x_1 POL(s(x_1)) = 0 POL(twice(x_1)) = [1] + x_1 ---------------------------------------- (290) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c8(MAX(s(0), s(z0))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(MAX(s(0), s(z0))) S tuples: MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c8(MAX(s(0), s(z0))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(MAX(s(0), s(z0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: MAX_2, TWICE_1, -'_2, F_2, MIN_2 Compound Symbols: c5_1, c7_1, c9_1, c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c13_1, c2_1, c12_2, c8_1, c10_1 ---------------------------------------- (291) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace MAX(s(z0), s(z1)) -> c5(MAX(z0, z1)) by MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) ---------------------------------------- (292) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(z1)) -> c11(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(z1)) -> c11(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1))), MAX(s(0), s(z1))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c8(MAX(s(0), s(z0))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(MAX(s(0), s(z0))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) S tuples: TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c8(MAX(s(0), s(z0))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(MAX(s(0), s(z0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: TWICE_1, -'_2, F_2, MIN_2, MAX_2 Compound Symbols: c7_1, c9_1, c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c13_1, c2_1, c12_2, c8_1, c10_1, c5_1 ---------------------------------------- (293) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 4 trailing nodes: F(s(x0), s(0)) -> c1(MAX(s(x0), s(0))) F(s(0), s(z0)) -> c10(MAX(s(0), s(z0))) F(s(0), s(z0)) -> c8(MAX(s(0), s(z0))) F(s(0), s(x0)) -> c(MAX(s(0), s(x0))) ---------------------------------------- (294) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) S tuples: TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0))), MAX(s(0), s(z0))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0))), MAX(s(z0), s(0))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: TWICE_1, -'_2, F_2, MIN_2, MAX_2 Compound Symbols: c7_1, c9_1, c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c13_1, c2_1, c12_2, c8_1, c10_1, c5_1 ---------------------------------------- (295) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 10 trailing tuple parts ---------------------------------------- (296) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) S tuples: TWICE(s(z0)) -> c7(TWICE(z0)) -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: TWICE_1, -'_2, F_2, MIN_2, MAX_2 Compound Symbols: c7_1, c9_1, c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c13_1, c2_1, c12_2, c8_1, c10_1, c5_1, c11_2 ---------------------------------------- (297) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace TWICE(s(z0)) -> c7(TWICE(z0)) by TWICE(s(s(y0))) -> c7(TWICE(s(y0))) ---------------------------------------- (298) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) S tuples: -'(s(z0), s(z1)) -> c9(-'(z0, z1)) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: -'_2, F_2, MIN_2, MAX_2, TWICE_1 Compound Symbols: c9_1, c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c13_1, c2_1, c12_2, c8_1, c10_1, c5_1, c11_2, c7_1 ---------------------------------------- (299) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace -'(s(z0), s(z1)) -> c9(-'(z0, z1)) by -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) ---------------------------------------- (300) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) S tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: F_2, MIN_2, MAX_2, TWICE_1, -'_2 Compound Symbols: c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c13_1, c2_1, c12_2, c8_1, c10_1, c5_1, c11_2, c7_1, c9_1 ---------------------------------------- (301) CdtRewritingProof (BOTH BOUNDS(ID, ID)) Used rewriting to replace F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) by F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) ---------------------------------------- (302) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) S tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: F_2, MIN_2, MAX_2, TWICE_1, -'_2 Compound Symbols: c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c13_1, c2_1, c12_2, c8_1, c10_1, c5_1, c11_2, c7_1, c9_1 ---------------------------------------- (303) CdtRewritingProof (BOTH BOUNDS(ID, ID)) Used rewriting to replace F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) by F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) ---------------------------------------- (304) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) S tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: F_2, MIN_2, MAX_2, TWICE_1, -'_2 Compound Symbols: c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c13_1, c2_1, c12_2, c8_1, c10_1, c5_1, c11_2, c7_1, c9_1 ---------------------------------------- (305) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace F(s(s(x0)), s(s(x1))) -> c6(MIN(s(x0), s(x1))) by F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) ---------------------------------------- (306) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) S tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: F_2, MIN_2, MAX_2, TWICE_1, -'_2 Compound Symbols: c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c13_1, c2_1, c12_2, c8_1, c10_1, c5_1, c11_2, c7_1, c9_1 ---------------------------------------- (307) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace F(s(0), s(x0)) -> c13(TWICE(min(0, x0))) by none ---------------------------------------- (308) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) S tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: F_2, MIN_2, MAX_2, TWICE_1, -'_2 Compound Symbols: c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c13_1, c2_1, c12_2, c8_1, c10_1, c5_1, c11_2, c7_1, c9_1 ---------------------------------------- (309) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace F(s(x0), s(0)) -> c13(TWICE(min(x0, 0))) by none ---------------------------------------- (310) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) S tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: F_2, MIN_2, MAX_2, TWICE_1, -'_2 Compound Symbols: c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c2_1, c12_2, c8_1, c10_1, c5_1, c11_2, c7_1, c9_1 ---------------------------------------- (311) CdtRewritingProof (BOTH BOUNDS(ID, ID)) Used rewriting to replace F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) by F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(0)), TWICE(min(0, z0))) ---------------------------------------- (312) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(0)), TWICE(min(0, z0))) S tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(0)), TWICE(min(0, z0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: F_2, MIN_2, MAX_2, TWICE_1, -'_2 Compound Symbols: c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c2_1, c12_2, c8_1, c10_1, c5_1, c11_2, c7_1, c9_1 ---------------------------------------- (313) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (314) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) S tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: F_2, MIN_2, MAX_2, TWICE_1, -'_2 Compound Symbols: c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c2_1, c12_2, c8_1, c10_1, c5_1, c11_2, c7_1, c9_1, c13_1 ---------------------------------------- (315) CdtRuleRemovalProof (UPPER BOUND(ADD(n^1))) Found a reduction pair which oriented the following tuples strictly. Hence they can be removed from S. F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) We considered the (Usable) Rules:none And the Tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) The order we found is given by the following interpretation: Polynomial interpretation : POL(-(x_1, x_2)) = [1] + x_1 POL(-'(x_1, x_2)) = 0 POL(0) = 0 POL(F(x_1, x_2)) = [1] POL(MAX(x_1, x_2)) = x_1 + x_2 POL(MIN(x_1, x_2)) = 0 POL(TWICE(x_1)) = 0 POL(c(x_1)) = x_1 POL(c1(x_1)) = x_1 POL(c10(x_1)) = x_1 POL(c11(x_1, x_2)) = x_1 + x_2 POL(c11(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c12(x_1, x_2)) = x_1 + x_2 POL(c12(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c13(x_1)) = x_1 POL(c13(x_1, x_2)) = x_1 + x_2 POL(c13(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c2(x_1)) = x_1 POL(c3(x_1)) = x_1 POL(c4(x_1)) = x_1 POL(c5(x_1)) = x_1 POL(c6(x_1)) = x_1 POL(c7(x_1)) = x_1 POL(c8(x_1)) = x_1 POL(c9(x_1)) = x_1 POL(max(x_1, x_2)) = 0 POL(min(x_1, x_2)) = 0 POL(p(x_1)) = [1] + x_1 POL(s(x_1)) = 0 POL(twice(x_1)) = [1] + x_1 ---------------------------------------- (316) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) S tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: F_2, MIN_2, MAX_2, TWICE_1, -'_2 Compound Symbols: c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c2_1, c12_2, c8_1, c10_1, c5_1, c11_2, c7_1, c9_1, c13_1 ---------------------------------------- (317) CdtRewritingProof (BOTH BOUNDS(ID, ID)) Used rewriting to replace F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) by F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(0)), TWICE(min(z0, 0))) ---------------------------------------- (318) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(0)), TWICE(min(z0, 0))) S tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(0)), TWICE(min(z0, 0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: F_2, MIN_2, MAX_2, TWICE_1, -'_2 Compound Symbols: c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c2_1, c12_2, c8_1, c10_1, c5_1, c11_2, c7_1, c9_1, c13_1 ---------------------------------------- (319) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (320) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) S tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: F_2, MIN_2, MAX_2, TWICE_1, -'_2 Compound Symbols: c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c2_1, c12_2, c8_1, c10_1, c5_1, c11_2, c7_1, c9_1, c13_1 ---------------------------------------- (321) CdtRuleRemovalProof (UPPER BOUND(ADD(n^1))) Found a reduction pair which oriented the following tuples strictly. Hence they can be removed from S. F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) We considered the (Usable) Rules:none And the Tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) The order we found is given by the following interpretation: Polynomial interpretation : POL(-(x_1, x_2)) = [1] + x_1 POL(-'(x_1, x_2)) = 0 POL(0) = 0 POL(F(x_1, x_2)) = [1] POL(MAX(x_1, x_2)) = x_1 + x_2 POL(MIN(x_1, x_2)) = 0 POL(TWICE(x_1)) = 0 POL(c(x_1)) = x_1 POL(c1(x_1)) = x_1 POL(c10(x_1)) = x_1 POL(c11(x_1, x_2)) = x_1 + x_2 POL(c11(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c12(x_1, x_2)) = x_1 + x_2 POL(c12(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c13(x_1)) = x_1 POL(c13(x_1, x_2)) = x_1 + x_2 POL(c13(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c2(x_1)) = x_1 POL(c3(x_1)) = x_1 POL(c4(x_1)) = x_1 POL(c5(x_1)) = x_1 POL(c6(x_1)) = x_1 POL(c7(x_1)) = x_1 POL(c8(x_1)) = x_1 POL(c9(x_1)) = x_1 POL(max(x_1, x_2)) = 0 POL(min(x_1, x_2)) = 0 POL(p(x_1)) = [1] + x_1 POL(s(x_1)) = 0 POL(twice(x_1)) = [1] + x_1 ---------------------------------------- (322) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) S tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: F_2, MIN_2, MAX_2, TWICE_1, -'_2 Compound Symbols: c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c2_1, c12_2, c8_1, c10_1, c5_1, c11_2, c7_1, c9_1, c13_1 ---------------------------------------- (323) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace MIN(s(s(y0)), s(s(y1))) -> c2(MIN(s(y0), s(y1))) by MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) ---------------------------------------- (324) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) S tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MIN(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MIN(s(s(z0)), s(s(0)))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: F_2, MAX_2, TWICE_1, -'_2, MIN_2 Compound Symbols: c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c12_2, c8_1, c10_1, c5_1, c11_2, c7_1, c9_1, c13_1, c2_1 ---------------------------------------- (325) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (326) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) S tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: F_2, MAX_2, TWICE_1, -'_2, MIN_2 Compound Symbols: c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c12_2, c8_1, c10_1, c5_1, c11_2, c7_1, c9_1, c13_1, c2_1 ---------------------------------------- (327) CdtRewritingProof (BOTH BOUNDS(ID, ID)) Used rewriting to replace F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) by F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(0)), TWICE(min(0, z0))) ---------------------------------------- (328) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(0)), TWICE(min(0, z0))) S tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(0)), TWICE(min(0, z0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: F_2, MAX_2, TWICE_1, -'_2, MIN_2 Compound Symbols: c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c12_2, c8_1, c10_1, c5_1, c11_2, c7_1, c9_1, c13_1, c2_1 ---------------------------------------- (329) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (330) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) S tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: F_2, MAX_2, TWICE_1, -'_2, MIN_2 Compound Symbols: c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c12_2, c8_1, c10_1, c5_1, c11_2, c7_1, c9_1, c13_1, c2_1 ---------------------------------------- (331) CdtKnowledgeProof (BOTH BOUNDS(ID, ID)) The following tuples could be moved from S to K by knowledge propagation: F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) ---------------------------------------- (332) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) S tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: F_2, MAX_2, TWICE_1, -'_2, MIN_2 Compound Symbols: c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c12_2, c8_1, c10_1, c5_1, c11_2, c7_1, c9_1, c13_1, c2_1 ---------------------------------------- (333) CdtRewritingProof (BOTH BOUNDS(ID, ID)) Used rewriting to replace F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) by F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(0)), TWICE(min(z0, 0))) ---------------------------------------- (334) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(0)), TWICE(min(z0, 0))) S tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(0)), TWICE(min(z0, 0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: F_2, MAX_2, TWICE_1, -'_2, MIN_2 Compound Symbols: c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c12_2, c8_1, c10_1, c5_1, c11_2, c7_1, c9_1, c13_1, c2_1 ---------------------------------------- (335) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (336) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) S tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: F_2, MAX_2, TWICE_1, -'_2, MIN_2 Compound Symbols: c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c12_2, c8_1, c10_1, c5_1, c11_2, c7_1, c9_1, c13_1, c2_1 ---------------------------------------- (337) CdtKnowledgeProof (BOTH BOUNDS(ID, ID)) The following tuples could be moved from S to K by knowledge propagation: F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) ---------------------------------------- (338) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) S tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: F_2, MAX_2, TWICE_1, -'_2, MIN_2 Compound Symbols: c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c12_2, c8_1, c10_1, c5_1, c11_2, c7_1, c9_1, c13_1, c2_1 ---------------------------------------- (339) CdtForwardInstantiationProof (BOTH BOUNDS(ID, ID)) Use forward instantiation to replace MAX(s(s(y0)), s(s(y1))) -> c5(MAX(s(y0), s(y1))) by MAX(s(s(s(y0))), s(s(s(y1)))) -> c5(MAX(s(s(y0)), s(s(y1)))) ---------------------------------------- (340) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) MAX(s(s(s(y0))), s(s(s(y1)))) -> c5(MAX(s(s(y0)), s(s(y1)))) S tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), MAX(s(s(0)), s(s(z0)))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), MAX(s(s(z0)), s(s(0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) MAX(s(s(s(y0))), s(s(s(y1)))) -> c5(MAX(s(s(y0)), s(s(y1)))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: F_2, TWICE_1, -'_2, MIN_2, MAX_2 Compound Symbols: c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c12_2, c8_1, c10_1, c11_2, c7_1, c9_1, c13_1, c2_1, c5_1 ---------------------------------------- (341) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (342) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) MAX(s(s(s(y0))), s(s(s(y1)))) -> c5(MAX(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) S tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) MAX(s(s(s(y0))), s(s(s(y1)))) -> c5(MAX(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: F_2, TWICE_1, -'_2, MIN_2, MAX_2 Compound Symbols: c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c12_2, c8_1, c10_1, c11_2, c7_1, c9_1, c13_1, c2_1, c5_1 ---------------------------------------- (343) CdtRewritingProof (BOTH BOUNDS(ID, ID)) Used rewriting to replace F(s(0), s(z1)) -> c13(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), TWICE(min(0, z1))) by F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(0)), TWICE(min(0, z0))) ---------------------------------------- (344) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) MAX(s(s(s(y0))), s(s(s(y1)))) -> c5(MAX(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(min(0, z0))), p(0)), TWICE(min(0, z0))) S tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) MAX(s(s(s(y0))), s(s(s(y1)))) -> c5(MAX(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: F_2, TWICE_1, -'_2, MIN_2, MAX_2 Compound Symbols: c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c12_2, c8_1, c10_1, c11_2, c7_1, c9_1, c13_1, c2_1, c5_1 ---------------------------------------- (345) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (346) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) MAX(s(s(s(y0))), s(s(s(y1)))) -> c5(MAX(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) S tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) MAX(s(s(s(y0))), s(s(s(y1)))) -> c5(MAX(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: F_2, TWICE_1, -'_2, MIN_2, MAX_2 Compound Symbols: c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c12_2, c8_1, c10_1, c11_2, c7_1, c9_1, c13_1, c2_1, c5_1 ---------------------------------------- (347) CdtRewritingProof (BOTH BOUNDS(ID, ID)) Used rewriting to replace F(s(0), s(z1)) -> c13(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), TWICE(min(0, z1))) by F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(0)), TWICE(min(0, z0))) ---------------------------------------- (348) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) MAX(s(s(s(y0))), s(s(s(y1)))) -> c5(MAX(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) F(s(0), s(z0)) -> c13(F(-(s(max(0, z0)), min(s(0), s(z0))), p(0)), TWICE(min(0, z0))) S tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) MAX(s(s(s(y0))), s(s(s(y1)))) -> c5(MAX(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: F_2, TWICE_1, -'_2, MIN_2, MAX_2 Compound Symbols: c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c12_2, c8_1, c10_1, c11_2, c7_1, c9_1, c13_1, c2_1, c5_1 ---------------------------------------- (349) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (350) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) MAX(s(s(s(y0))), s(s(s(y1)))) -> c5(MAX(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) S tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) MAX(s(s(s(y0))), s(s(s(y1)))) -> c5(MAX(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: F_2, TWICE_1, -'_2, MIN_2, MAX_2 Compound Symbols: c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c12_2, c8_1, c10_1, c11_2, c7_1, c9_1, c13_1, c2_1, c5_1 ---------------------------------------- (351) CdtRewritingProof (BOTH BOUNDS(ID, ID)) Used rewriting to replace F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), TWICE(min(z0, 0))) by F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(0)), TWICE(min(z0, 0))) ---------------------------------------- (352) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) MAX(s(s(s(y0))), s(s(s(y1)))) -> c5(MAX(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(0)), TWICE(min(z0, 0))) S tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) MAX(s(s(s(y0))), s(s(s(y1)))) -> c5(MAX(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: F_2, TWICE_1, -'_2, MIN_2, MAX_2 Compound Symbols: c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c12_2, c8_1, c10_1, c11_2, c7_1, c9_1, c13_1, c2_1, c5_1 ---------------------------------------- (353) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (354) Obligation: Complexity Dependency Tuples Problem Rules: -(z0, 0) -> z0 -(s(z0), s(z1)) -> -(z0, z1) max(s(z0), s(z1)) -> s(max(z0, z1)) max(0, z0) -> z0 max(z0, 0) -> z0 min(s(z0), s(z1)) -> s(min(z0, z1)) min(0, z0) -> 0 min(z0, 0) -> 0 p(s(z0)) -> z0 twice(0) -> 0 twice(s(z0)) -> s(s(twice(z0))) Tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(0)) -> c13(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), TWICE(min(z0, 0))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(min(0, z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(max(0, z0)), min(s(0), s(z0))), p(twice(0))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) MAX(s(s(s(y0))), s(s(s(y1)))) -> c5(MAX(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) S tuples: F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c11(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MAX(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c11(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c11(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MAX(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c11(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c11(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MAX(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c11(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MAX(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(s(z0))), s(s(s(z1)))) -> c12(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), -'(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), MIN(s(s(s(z0))), s(s(s(z1))))) F(s(s(x0)), s(s(x1))) -> c12(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(x0)), s(s(x1))) -> c12(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), -'(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), MIN(s(s(x0)), s(s(x1)))) F(s(s(z0)), s(s(z1))) -> c12(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(z0), s(z1)) -> c12(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), -'(max(s(z0), s(z1)), min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(s(z0)), s(s(z1))) -> c12(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), -'(max(s(s(z0)), s(s(z1))), min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), min(s(s(x0)), s(s(x1)))), p(s(s(twice(min(x0, x1)))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(s(z0))), s(s(s(z1)))) -> c13(F(-(max(s(s(s(z0))), s(s(s(z1)))), min(s(s(s(z0))), s(s(s(z1))))), p(twice(s(s(min(z0, z1)))))), TWICE(min(s(s(z0)), s(s(z1)))), MIN(s(s(z0)), s(s(z1)))) F(s(s(x0)), s(s(x1))) -> c13(F(-(max(s(s(x0)), s(s(x1))), s(min(s(x0), s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(x0)), s(s(x1))) -> c13(F(-(s(max(s(x0), s(x1))), min(s(s(x0)), s(s(x1)))), p(twice(s(min(x0, x1))))), TWICE(min(s(x0), s(x1))), MIN(s(x0), s(x1))) F(s(s(z0)), s(s(z1))) -> c13(F(-(max(s(s(z0)), s(s(z1))), s(s(min(z0, z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(z0), s(z1)) -> c13(F(-(s(max(z0, z1)), s(min(z0, z1))), p(twice(min(z0, z1)))), TWICE(min(z0, z1)), MIN(z0, z1)) F(s(0), s(z0)) -> c13(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(s(z0)), s(s(z1))) -> c13(F(-(s(s(max(z0, z1))), min(s(s(z0)), s(s(z1)))), p(twice(min(s(z0), s(z1))))), TWICE(min(s(z0), s(z1))), MIN(s(z0), s(z1))) F(s(0), s(z0)) -> c13(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), TWICE(min(z0, 0))) F(s(0), s(z1)) -> c12(F(-(max(s(0), s(z1)), s(min(0, z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(0), s(z1)) -> c12(F(-(s(max(0, z1)), min(s(0), s(z1))), p(twice(0))), -'(max(s(0), s(z1)), min(s(0), s(z1)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c12(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c12(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c12(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(s(0)), s(s(z0))) -> c13(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(twice(s(0)))), TWICE(min(s(0), s(z0)))) F(s(s(z0)), s(s(0))) -> c13(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(twice(s(0)))), TWICE(min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(min(z0, 0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(z0), s(0)) -> c11(F(-(s(max(z0, 0)), min(s(z0), s(0))), p(twice(0))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(max(s(0), s(z0)), s(0)), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(max(s(z0), s(0)), s(0)), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) F(s(0), s(z0)) -> c11(F(-(s(z0), min(s(0), s(z0))), p(twice(min(0, z0)))), -'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(z0), s(0)) -> c11(F(-(s(z0), min(s(z0), s(0))), p(twice(min(z0, 0)))), -'(max(s(z0), s(0)), min(s(z0), s(0)))) TWICE(s(s(y0))) -> c7(TWICE(s(y0))) -'(s(s(y0)), s(s(y1))) -> c9(-'(s(y0), s(y1))) MIN(s(s(s(y0))), s(s(s(y1)))) -> c2(MIN(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c12(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c12(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) MAX(s(s(s(y0))), s(s(s(y1)))) -> c5(MAX(s(s(y0)), s(s(y1)))) F(s(s(0)), s(s(z0))) -> c11(F(-(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0)))), p(s(s(twice(0))))), -'(max(s(s(0)), s(s(z0))), min(s(s(0)), s(s(z0))))) F(s(s(z0)), s(s(0))) -> c11(F(-(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0)))), p(s(s(twice(0))))), -'(max(s(s(z0)), s(s(0))), min(s(s(z0)), s(s(0))))) K tuples: F(s(0), s(x0)) -> c(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c1(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(0), s(x0)) -> c3(-'(max(s(0), s(x0)), min(s(0), s(x0)))) F(s(x0), s(0)) -> c4(-'(max(s(x0), s(0)), min(s(x0), s(0)))) F(s(s(x0)), s(s(x1))) -> c6(TWICE(min(s(x0), s(x1)))) F(s(0), s(z0)) -> c8(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(0), s(z0)) -> c10(-'(max(s(0), s(z0)), min(s(0), s(z0)))) F(s(s(s(y0))), s(s(s(y1)))) -> c6(MIN(s(s(y0)), s(s(y1)))) F(s(0), s(z0)) -> c13(TWICE(min(0, z0))) F(s(z0), s(0)) -> c13(TWICE(min(z0, 0))) Defined Rule Symbols: -_2, max_2, min_2, p_1, twice_1 Defined Pair Symbols: F_2, TWICE_1, -'_2, MIN_2, MAX_2 Compound Symbols: c11_3, c_1, c1_1, c12_3, c3_1, c4_1, c13_3, c6_1, c13_2, c12_2, c8_1, c10_1, c11_2, c7_1, c9_1, c13_1, c2_1, c5_1