/export/starexec/sandbox2/solver/bin/starexec_run_rcdcRelativeAlsoLower /export/starexec/sandbox2/benchmark/theBenchmark.xml /export/starexec/sandbox2/output/output_files -------------------------------------------------------------------------------- KILLED proof of /export/starexec/sandbox2/benchmark/theBenchmark.xml # AProVE Commit ID: 794c25de1cacf0d048858bcd21c9a779e1221865 marcel 20200619 unpublished dirty The Derivational Complexity (innermost) of the given DCpxTrs could be proven to be BOUNDS(1, INF). (0) DCpxTrs (1) DerivationalComplexityToRuntimeComplexityProof [BOTH BOUNDS(ID, ID), 0 ms] (2) CpxRelTRS (3) SInnermostTerminationProof [BOTH CONCRETE BOUNDS(ID, ID), 206 ms] (4) CpxRelTRS (5) RelTrsToDecreasingLoopProblemProof [LOWER BOUND(ID), 0 ms] (6) TRS for Loop Detection (7) RenamingProof [BOTH BOUNDS(ID, ID), 0 ms] (8) CpxRelTRS (9) TypeInferenceProof [BOTH BOUNDS(ID, ID), 0 ms] (10) typed CpxTrs (11) OrderProof [LOWER BOUND(ID), 0 ms] (12) typed CpxTrs (13) RewriteLemmaProof [LOWER BOUND(ID), 1875 ms] (14) BOUNDS(1, INF) (15) RelTrsToTrsProof [UPPER BOUND(ID), 0 ms] (16) CpxTRS (17) NonCtorToCtorProof [UPPER BOUND(ID), 0 ms] (18) CpxRelTRS (19) RelTrsToWeightedTrsProof [BOTH BOUNDS(ID, ID), 0 ms] (20) CpxWeightedTrs (21) CpxWeightedTrsRenamingProof [BOTH BOUNDS(ID, ID), 0 ms] (22) CpxWeightedTrs (23) TypeInferenceProof [BOTH BOUNDS(ID, ID), 0 ms] (24) CpxTypedWeightedTrs (25) CompletionProof [UPPER BOUND(ID), 0 ms] (26) CpxTypedWeightedCompleteTrs (27) CpxTypedWeightedTrsToRntsProof [UPPER BOUND(ID), 0 ms] (28) CpxRNTS (29) CompletionProof [UPPER BOUND(ID), 0 ms] (30) CpxTypedWeightedCompleteTrs (31) NarrowingProof [BOTH BOUNDS(ID, ID), 34 ms] (32) CpxTypedWeightedCompleteTrs (33) CpxTypedWeightedTrsToRntsProof [UPPER BOUND(ID), 5 ms] (34) CpxRNTS (35) InliningProof [UPPER BOUND(ID), 858 ms] (36) CpxRNTS (37) SimplificationProof [BOTH BOUNDS(ID, ID), 0 ms] (38) CpxRNTS (39) CpxRntsAnalysisOrderProof [BOTH BOUNDS(ID, ID), 3 ms] (40) CpxRNTS (41) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (42) CpxRNTS (43) IntTrsBoundProof [UPPER BOUND(ID), 81 ms] (44) CpxRNTS (45) IntTrsBoundProof [UPPER BOUND(ID), 0 ms] (46) CpxRNTS (47) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (48) CpxRNTS (49) IntTrsBoundProof [UPPER BOUND(ID), 243 ms] (50) CpxRNTS (51) IntTrsBoundProof [UPPER BOUND(ID), 53 ms] (52) CpxRNTS (53) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (54) CpxRNTS (55) IntTrsBoundProof [UPPER BOUND(ID), 221 ms] (56) CpxRNTS (57) IntTrsBoundProof [UPPER BOUND(ID), 0 ms] (58) CpxRNTS (59) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (60) CpxRNTS (61) IntTrsBoundProof [UPPER BOUND(ID), 698 ms] (62) CpxRNTS (63) IntTrsBoundProof [UPPER BOUND(ID), 177 ms] (64) CpxRNTS (65) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (66) CpxRNTS (67) IntTrsBoundProof [UPPER BOUND(ID), 394 ms] (68) CpxRNTS (69) IntTrsBoundProof [UPPER BOUND(ID), 126 ms] (70) CpxRNTS (71) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (72) CpxRNTS (73) IntTrsBoundProof [UPPER BOUND(ID), 3096 ms] (74) CpxRNTS (75) IntTrsBoundProof [UPPER BOUND(ID), 394 ms] (76) CpxRNTS (77) ResultPropagationProof [UPPER BOUND(ID), 0 ms] (78) CpxRNTS (79) IntTrsBoundProof [UPPER BOUND(ID), 0 ms] (80) CpxRNTS (81) IntTrsBoundProof [UPPER BOUND(ID), 582 ms] (82) CpxRNTS (83) CpxTrsToCdtProof [UPPER BOUND(ID), 0 ms] (84) CdtProblem (85) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (86) CdtProblem (87) CdtGraphSplitRhsProof [BOTH BOUNDS(ID, ID), 0 ms] (88) CdtProblem (89) CdtLeafRemovalProof [ComplexityIfPolyImplication, 0 ms] (90) CdtProblem (91) CdtUsableRulesProof [BOTH BOUNDS(ID, ID), 0 ms] (92) CdtProblem (93) CdtRuleRemovalProof [UPPER BOUND(ADD(n^1)), 229 ms] (94) CdtProblem (95) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (96) CdtProblem (97) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (98) CdtProblem (99) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (100) CdtProblem (101) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (102) CdtProblem (103) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (104) CdtProblem (105) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 3 ms] (106) CdtProblem (107) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (108) CdtProblem (109) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (110) CdtProblem (111) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (112) CdtProblem (113) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (114) CdtProblem (115) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (116) CdtProblem (117) CdtGraphSplitRhsProof [BOTH BOUNDS(ID, ID), 0 ms] (118) CdtProblem (119) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (120) CdtProblem (121) CdtGraphSplitRhsProof [BOTH BOUNDS(ID, ID), 0 ms] (122) CdtProblem (123) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (124) CdtProblem (125) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (126) CdtProblem (127) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (128) CdtProblem (129) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (130) CdtProblem (131) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (132) CdtProblem (133) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (134) CdtProblem (135) CdtRuleRemovalProof [UPPER BOUND(ADD(n^1)), 201 ms] (136) CdtProblem (137) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (138) CdtProblem (139) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (140) CdtProblem (141) CdtGraphSplitRhsProof [BOTH BOUNDS(ID, ID), 0 ms] (142) CdtProblem (143) CdtRuleRemovalProof [UPPER BOUND(ADD(n^1)), 189 ms] (144) CdtProblem (145) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (146) CdtProblem (147) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (148) CdtProblem (149) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (150) CdtProblem (151) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (152) CdtProblem (153) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 4 ms] (154) CdtProblem (155) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (156) CdtProblem (157) CdtLeafRemovalProof [ComplexityIfPolyImplication, 0 ms] (158) CdtProblem (159) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (160) CdtProblem (161) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (162) CdtProblem (163) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (164) CdtProblem (165) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (166) CdtProblem (167) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (168) CdtProblem (169) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (170) CdtProblem (171) CdtGraphSplitRhsProof [BOTH BOUNDS(ID, ID), 0 ms] (172) CdtProblem (173) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (174) CdtProblem (175) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (176) CdtProblem (177) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (178) CdtProblem (179) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 5 ms] (180) CdtProblem (181) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (182) CdtProblem (183) CdtGraphSplitRhsProof [BOTH BOUNDS(ID, ID), 0 ms] (184) CdtProblem (185) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (186) CdtProblem (187) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 3 ms] (188) CdtProblem (189) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (190) CdtProblem (191) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (192) CdtProblem (193) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (194) CdtProblem (195) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 58 ms] (196) CdtProblem (197) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (198) CdtProblem (199) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 1 ms] (200) CdtProblem (201) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (202) CdtProblem (203) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 67 ms] (204) CdtProblem (205) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (206) CdtProblem (207) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 75 ms] (208) CdtProblem (209) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (210) CdtProblem (211) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 5 ms] (212) CdtProblem (213) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (214) CdtProblem (215) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 97 ms] (216) CdtProblem (217) CdtRhsSimplificationProcessorProof [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) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (224) CdtProblem (225) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 0 ms] (226) CdtProblem (227) CdtGraphSplitRhsProof [BOTH BOUNDS(ID, ID), 0 ms] (228) CdtProblem (229) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 33 ms] (230) CdtProblem (231) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 91 ms] (232) CdtProblem (233) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (234) CdtProblem (235) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 98 ms] (236) CdtProblem (237) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (238) CdtProblem (239) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 157 ms] (240) CdtProblem (241) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (242) CdtProblem (243) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 102 ms] (244) CdtProblem (245) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 6 ms] (246) CdtProblem (247) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 87 ms] (248) CdtProblem (249) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (250) CdtProblem (251) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 100 ms] (252) CdtProblem (253) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (254) CdtProblem (255) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 99 ms] (256) CdtProblem (257) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (258) CdtProblem (259) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 199 ms] (260) CdtProblem (261) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (262) CdtProblem (263) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 4 ms] (264) CdtProblem (265) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 11 ms] (266) CdtProblem ---------------------------------------- (0) Obligation: The Derivational Complexity (innermost) of the given DCpxTrs could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: p(s(x)) -> x s(p(x)) -> x +(0, y) -> y +(s(x), y) -> s(+(x, y)) +(p(x), y) -> p(+(x, y)) minus(0) -> 0 minus(s(x)) -> p(minus(x)) minus(p(x)) -> s(minus(x)) *(0, y) -> 0 *(s(x), y) -> +(*(x, y), y) *(p(x), y) -> +(*(x, y), minus(y)) S is empty. Rewrite Strategy: INNERMOST ---------------------------------------- (1) DerivationalComplexityToRuntimeComplexityProof (BOTH BOUNDS(ID, ID)) The following rules have been added to S to convert the given derivational complexity problem to a runtime complexity problem: encArg(0) -> 0 encArg(cons_p(x_1)) -> p(encArg(x_1)) encArg(cons_s(x_1)) -> s(encArg(x_1)) encArg(cons_+(x_1, x_2)) -> +(encArg(x_1), encArg(x_2)) encArg(cons_minus(x_1)) -> minus(encArg(x_1)) encArg(cons_*(x_1, x_2)) -> *(encArg(x_1), encArg(x_2)) encode_p(x_1) -> p(encArg(x_1)) encode_s(x_1) -> s(encArg(x_1)) encode_+(x_1, x_2) -> +(encArg(x_1), encArg(x_2)) encode_0 -> 0 encode_minus(x_1) -> minus(encArg(x_1)) encode_*(x_1, x_2) -> *(encArg(x_1), encArg(x_2)) ---------------------------------------- (2) Obligation: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: p(s(x)) -> x s(p(x)) -> x +(0, y) -> y +(s(x), y) -> s(+(x, y)) +(p(x), y) -> p(+(x, y)) minus(0) -> 0 minus(s(x)) -> p(minus(x)) minus(p(x)) -> s(minus(x)) *(0, y) -> 0 *(s(x), y) -> +(*(x, y), y) *(p(x), y) -> +(*(x, y), minus(y)) The (relative) TRS S consists of the following rules: encArg(0) -> 0 encArg(cons_p(x_1)) -> p(encArg(x_1)) encArg(cons_s(x_1)) -> s(encArg(x_1)) encArg(cons_+(x_1, x_2)) -> +(encArg(x_1), encArg(x_2)) encArg(cons_minus(x_1)) -> minus(encArg(x_1)) encArg(cons_*(x_1, x_2)) -> *(encArg(x_1), encArg(x_2)) encode_p(x_1) -> p(encArg(x_1)) encode_s(x_1) -> s(encArg(x_1)) encode_+(x_1, x_2) -> +(encArg(x_1), encArg(x_2)) encode_0 -> 0 encode_minus(x_1) -> minus(encArg(x_1)) encode_*(x_1, x_2) -> *(encArg(x_1), encArg(x_2)) Rewrite Strategy: INNERMOST ---------------------------------------- (3) SInnermostTerminationProof (BOTH CONCRETE BOUNDS(ID, ID)) proved innermost termination of relative rules ---------------------------------------- (4) Obligation: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: p(s(x)) -> x s(p(x)) -> x +(0, y) -> y +(s(x), y) -> s(+(x, y)) +(p(x), y) -> p(+(x, y)) minus(0) -> 0 minus(s(x)) -> p(minus(x)) minus(p(x)) -> s(minus(x)) *(0, y) -> 0 *(s(x), y) -> +(*(x, y), y) *(p(x), y) -> +(*(x, y), minus(y)) The (relative) TRS S consists of the following rules: encArg(0) -> 0 encArg(cons_p(x_1)) -> p(encArg(x_1)) encArg(cons_s(x_1)) -> s(encArg(x_1)) encArg(cons_+(x_1, x_2)) -> +(encArg(x_1), encArg(x_2)) encArg(cons_minus(x_1)) -> minus(encArg(x_1)) encArg(cons_*(x_1, x_2)) -> *(encArg(x_1), encArg(x_2)) encode_p(x_1) -> p(encArg(x_1)) encode_s(x_1) -> s(encArg(x_1)) encode_+(x_1, x_2) -> +(encArg(x_1), encArg(x_2)) encode_0 -> 0 encode_minus(x_1) -> minus(encArg(x_1)) encode_*(x_1, x_2) -> *(encArg(x_1), encArg(x_2)) Rewrite Strategy: INNERMOST ---------------------------------------- (5) RelTrsToDecreasingLoopProblemProof (LOWER BOUND(ID)) Transformed a relative TRS into a decreasing-loop problem. ---------------------------------------- (6) Obligation: Analyzing the following TRS for decreasing loops: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: p(s(x)) -> x s(p(x)) -> x +(0, y) -> y +(s(x), y) -> s(+(x, y)) +(p(x), y) -> p(+(x, y)) minus(0) -> 0 minus(s(x)) -> p(minus(x)) minus(p(x)) -> s(minus(x)) *(0, y) -> 0 *(s(x), y) -> +(*(x, y), y) *(p(x), y) -> +(*(x, y), minus(y)) The (relative) TRS S consists of the following rules: encArg(0) -> 0 encArg(cons_p(x_1)) -> p(encArg(x_1)) encArg(cons_s(x_1)) -> s(encArg(x_1)) encArg(cons_+(x_1, x_2)) -> +(encArg(x_1), encArg(x_2)) encArg(cons_minus(x_1)) -> minus(encArg(x_1)) encArg(cons_*(x_1, x_2)) -> *(encArg(x_1), encArg(x_2)) encode_p(x_1) -> p(encArg(x_1)) encode_s(x_1) -> s(encArg(x_1)) encode_+(x_1, x_2) -> +(encArg(x_1), encArg(x_2)) encode_0 -> 0 encode_minus(x_1) -> minus(encArg(x_1)) encode_*(x_1, x_2) -> *(encArg(x_1), encArg(x_2)) Rewrite Strategy: INNERMOST ---------------------------------------- (7) RenamingProof (BOTH BOUNDS(ID, ID)) Renamed function symbols to avoid clashes with predefined symbol. ---------------------------------------- (8) Obligation: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: p(s(x)) -> x s(p(x)) -> x +'(0', y) -> y +'(s(x), y) -> s(+'(x, y)) +'(p(x), y) -> p(+'(x, y)) minus(0') -> 0' minus(s(x)) -> p(minus(x)) minus(p(x)) -> s(minus(x)) *'(0', y) -> 0' *'(s(x), y) -> +'(*'(x, y), y) *'(p(x), y) -> +'(*'(x, y), minus(y)) The (relative) TRS S consists of the following rules: encArg(0') -> 0' encArg(cons_p(x_1)) -> p(encArg(x_1)) encArg(cons_s(x_1)) -> s(encArg(x_1)) encArg(cons_+(x_1, x_2)) -> +'(encArg(x_1), encArg(x_2)) encArg(cons_minus(x_1)) -> minus(encArg(x_1)) encArg(cons_*(x_1, x_2)) -> *'(encArg(x_1), encArg(x_2)) encode_p(x_1) -> p(encArg(x_1)) encode_s(x_1) -> s(encArg(x_1)) encode_+(x_1, x_2) -> +'(encArg(x_1), encArg(x_2)) encode_0 -> 0' encode_minus(x_1) -> minus(encArg(x_1)) encode_*(x_1, x_2) -> *'(encArg(x_1), encArg(x_2)) Rewrite Strategy: INNERMOST ---------------------------------------- (9) TypeInferenceProof (BOTH BOUNDS(ID, ID)) Infered types. ---------------------------------------- (10) Obligation: Innermost TRS: Rules: p(s(x)) -> x s(p(x)) -> x +'(0', y) -> y +'(s(x), y) -> s(+'(x, y)) +'(p(x), y) -> p(+'(x, y)) minus(0') -> 0' minus(s(x)) -> p(minus(x)) minus(p(x)) -> s(minus(x)) *'(0', y) -> 0' *'(s(x), y) -> +'(*'(x, y), y) *'(p(x), y) -> +'(*'(x, y), minus(y)) encArg(0') -> 0' encArg(cons_p(x_1)) -> p(encArg(x_1)) encArg(cons_s(x_1)) -> s(encArg(x_1)) encArg(cons_+(x_1, x_2)) -> +'(encArg(x_1), encArg(x_2)) encArg(cons_minus(x_1)) -> minus(encArg(x_1)) encArg(cons_*(x_1, x_2)) -> *'(encArg(x_1), encArg(x_2)) encode_p(x_1) -> p(encArg(x_1)) encode_s(x_1) -> s(encArg(x_1)) encode_+(x_1, x_2) -> +'(encArg(x_1), encArg(x_2)) encode_0 -> 0' encode_minus(x_1) -> minus(encArg(x_1)) encode_*(x_1, x_2) -> *'(encArg(x_1), encArg(x_2)) Types: p :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* s :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* +' :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* 0' :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* minus :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* *' :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* encArg :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* cons_p :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* cons_s :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* cons_+ :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* cons_minus :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* cons_* :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* encode_p :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* encode_s :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* encode_+ :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* encode_0 :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* encode_minus :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* encode_* :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* hole_0':cons_p:cons_s:cons_+:cons_minus:cons_*1_3 :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* gen_0':cons_p:cons_s:cons_+:cons_minus:cons_*2_3 :: Nat -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* ---------------------------------------- (11) OrderProof (LOWER BOUND(ID)) Heuristically decided to analyse the following defined symbols: +', minus, *', encArg They will be analysed ascendingly in the following order: +' < *' +' < encArg minus < *' minus < encArg *' < encArg ---------------------------------------- (12) Obligation: Innermost TRS: Rules: p(s(x)) -> x s(p(x)) -> x +'(0', y) -> y +'(s(x), y) -> s(+'(x, y)) +'(p(x), y) -> p(+'(x, y)) minus(0') -> 0' minus(s(x)) -> p(minus(x)) minus(p(x)) -> s(minus(x)) *'(0', y) -> 0' *'(s(x), y) -> +'(*'(x, y), y) *'(p(x), y) -> +'(*'(x, y), minus(y)) encArg(0') -> 0' encArg(cons_p(x_1)) -> p(encArg(x_1)) encArg(cons_s(x_1)) -> s(encArg(x_1)) encArg(cons_+(x_1, x_2)) -> +'(encArg(x_1), encArg(x_2)) encArg(cons_minus(x_1)) -> minus(encArg(x_1)) encArg(cons_*(x_1, x_2)) -> *'(encArg(x_1), encArg(x_2)) encode_p(x_1) -> p(encArg(x_1)) encode_s(x_1) -> s(encArg(x_1)) encode_+(x_1, x_2) -> +'(encArg(x_1), encArg(x_2)) encode_0 -> 0' encode_minus(x_1) -> minus(encArg(x_1)) encode_*(x_1, x_2) -> *'(encArg(x_1), encArg(x_2)) Types: p :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* s :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* +' :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* 0' :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* minus :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* *' :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* encArg :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* cons_p :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* cons_s :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* cons_+ :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* cons_minus :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* cons_* :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* encode_p :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* encode_s :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* encode_+ :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* encode_0 :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* encode_minus :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* encode_* :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* hole_0':cons_p:cons_s:cons_+:cons_minus:cons_*1_3 :: 0':cons_p:cons_s:cons_+:cons_minus:cons_* gen_0':cons_p:cons_s:cons_+:cons_minus:cons_*2_3 :: Nat -> 0':cons_p:cons_s:cons_+:cons_minus:cons_* Generator Equations: gen_0':cons_p:cons_s:cons_+:cons_minus:cons_*2_3(0) <=> 0' gen_0':cons_p:cons_s:cons_+:cons_minus:cons_*2_3(+(x, 1)) <=> cons_p(gen_0':cons_p:cons_s:cons_+:cons_minus:cons_*2_3(x)) The following defined symbols remain to be analysed: +', minus, *', encArg They will be analysed ascendingly in the following order: +' < *' +' < encArg minus < *' minus < encArg *' < encArg ---------------------------------------- (13) RewriteLemmaProof (LOWER BOUND(ID)) Proved the following rewrite lemma: encArg(gen_0':cons_p:cons_s:cons_+:cons_minus:cons_*2_3(+(1, n56_3))) -> *3_3, rt in Omega(0) Induction Base: encArg(gen_0':cons_p:cons_s:cons_+:cons_minus:cons_*2_3(+(1, 0))) Induction Step: encArg(gen_0':cons_p:cons_s:cons_+:cons_minus:cons_*2_3(+(1, +(n56_3, 1)))) ->_R^Omega(0) p(encArg(gen_0':cons_p:cons_s:cons_+:cons_minus:cons_*2_3(+(1, n56_3)))) ->_IH p(*3_3) We have rt in Omega(1) and sz in O(n). Thus, we have irc_R in Omega(n^0). ---------------------------------------- (14) BOUNDS(1, INF) ---------------------------------------- (15) RelTrsToTrsProof (UPPER BOUND(ID)) transformed relative TRS to TRS ---------------------------------------- (16) 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: p(s(x)) -> x s(p(x)) -> x +(0, y) -> y +(s(x), y) -> s(+(x, y)) +(p(x), y) -> p(+(x, y)) minus(0) -> 0 minus(s(x)) -> p(minus(x)) minus(p(x)) -> s(minus(x)) *(0, y) -> 0 *(s(x), y) -> +(*(x, y), y) *(p(x), y) -> +(*(x, y), minus(y)) encArg(0) -> 0 encArg(cons_p(x_1)) -> p(encArg(x_1)) encArg(cons_s(x_1)) -> s(encArg(x_1)) encArg(cons_+(x_1, x_2)) -> +(encArg(x_1), encArg(x_2)) encArg(cons_minus(x_1)) -> minus(encArg(x_1)) encArg(cons_*(x_1, x_2)) -> *(encArg(x_1), encArg(x_2)) encode_p(x_1) -> p(encArg(x_1)) encode_s(x_1) -> s(encArg(x_1)) encode_+(x_1, x_2) -> +(encArg(x_1), encArg(x_2)) encode_0 -> 0 encode_minus(x_1) -> minus(encArg(x_1)) encode_*(x_1, x_2) -> *(encArg(x_1), encArg(x_2)) S is empty. Rewrite Strategy: INNERMOST ---------------------------------------- (17) NonCtorToCtorProof (UPPER BOUND(ID)) transformed non-ctor to ctor-system ---------------------------------------- (18) 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: +(0, y) -> y minus(0) -> 0 *(0, y) -> 0 +(c_s(x), y) -> s(+(x, y)) *(c_p(x), y) -> +(*(x, y), minus(y)) p(c_s(x)) -> x s(c_p(x)) -> x minus(c_p(x)) -> s(minus(x)) *(c_s(x), y) -> +(*(x, y), y) minus(c_s(x)) -> p(minus(x)) +(c_p(x), y) -> p(+(x, y)) The (relative) TRS S consists of the following rules: encArg(0) -> 0 encArg(cons_p(x_1)) -> p(encArg(x_1)) encArg(cons_s(x_1)) -> s(encArg(x_1)) encArg(cons_+(x_1, x_2)) -> +(encArg(x_1), encArg(x_2)) encArg(cons_minus(x_1)) -> minus(encArg(x_1)) encArg(cons_*(x_1, x_2)) -> *(encArg(x_1), encArg(x_2)) encode_p(x_1) -> p(encArg(x_1)) encode_s(x_1) -> s(encArg(x_1)) encode_+(x_1, x_2) -> +(encArg(x_1), encArg(x_2)) encode_0 -> 0 encode_minus(x_1) -> minus(encArg(x_1)) encode_*(x_1, x_2) -> *(encArg(x_1), encArg(x_2)) s(x0) -> c_s(x0) p(x0) -> c_p(x0) Rewrite Strategy: INNERMOST ---------------------------------------- (19) RelTrsToWeightedTrsProof (BOTH BOUNDS(ID, ID)) Transformed relative TRS to weighted TRS ---------------------------------------- (20) 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: +(0, y) -> y [1] minus(0) -> 0 [1] *(0, y) -> 0 [1] +(c_s(x), y) -> s(+(x, y)) [1] *(c_p(x), y) -> +(*(x, y), minus(y)) [1] p(c_s(x)) -> x [1] s(c_p(x)) -> x [1] minus(c_p(x)) -> s(minus(x)) [1] *(c_s(x), y) -> +(*(x, y), y) [1] minus(c_s(x)) -> p(minus(x)) [1] +(c_p(x), y) -> p(+(x, y)) [1] encArg(0) -> 0 [0] encArg(cons_p(x_1)) -> p(encArg(x_1)) [0] encArg(cons_s(x_1)) -> s(encArg(x_1)) [0] encArg(cons_+(x_1, x_2)) -> +(encArg(x_1), encArg(x_2)) [0] encArg(cons_minus(x_1)) -> minus(encArg(x_1)) [0] encArg(cons_*(x_1, x_2)) -> *(encArg(x_1), encArg(x_2)) [0] encode_p(x_1) -> p(encArg(x_1)) [0] encode_s(x_1) -> s(encArg(x_1)) [0] encode_+(x_1, x_2) -> +(encArg(x_1), encArg(x_2)) [0] encode_0 -> 0 [0] encode_minus(x_1) -> minus(encArg(x_1)) [0] encode_*(x_1, x_2) -> *(encArg(x_1), encArg(x_2)) [0] s(x0) -> c_s(x0) [0] p(x0) -> c_p(x0) [0] Rewrite Strategy: INNERMOST ---------------------------------------- (21) CpxWeightedTrsRenamingProof (BOTH BOUNDS(ID, ID)) Renamed defined symbols to avoid conflicts with arithmetic symbols: + => plus * => times ---------------------------------------- (22) 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: plus(0, y) -> y [1] minus(0) -> 0 [1] times(0, y) -> 0 [1] plus(c_s(x), y) -> s(plus(x, y)) [1] times(c_p(x), y) -> plus(times(x, y), minus(y)) [1] p(c_s(x)) -> x [1] s(c_p(x)) -> x [1] minus(c_p(x)) -> s(minus(x)) [1] times(c_s(x), y) -> plus(times(x, y), y) [1] minus(c_s(x)) -> p(minus(x)) [1] plus(c_p(x), y) -> p(plus(x, y)) [1] encArg(0) -> 0 [0] encArg(cons_p(x_1)) -> p(encArg(x_1)) [0] encArg(cons_s(x_1)) -> s(encArg(x_1)) [0] encArg(cons_+(x_1, x_2)) -> plus(encArg(x_1), encArg(x_2)) [0] encArg(cons_minus(x_1)) -> minus(encArg(x_1)) [0] encArg(cons_*(x_1, x_2)) -> times(encArg(x_1), encArg(x_2)) [0] encode_p(x_1) -> p(encArg(x_1)) [0] encode_s(x_1) -> s(encArg(x_1)) [0] encode_+(x_1, x_2) -> plus(encArg(x_1), encArg(x_2)) [0] encode_0 -> 0 [0] encode_minus(x_1) -> minus(encArg(x_1)) [0] encode_*(x_1, x_2) -> times(encArg(x_1), encArg(x_2)) [0] s(x0) -> c_s(x0) [0] p(x0) -> c_p(x0) [0] Rewrite Strategy: INNERMOST ---------------------------------------- (23) TypeInferenceProof (BOTH BOUNDS(ID, ID)) Infered types. ---------------------------------------- (24) Obligation: Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules: plus(0, y) -> y [1] minus(0) -> 0 [1] times(0, y) -> 0 [1] plus(c_s(x), y) -> s(plus(x, y)) [1] times(c_p(x), y) -> plus(times(x, y), minus(y)) [1] p(c_s(x)) -> x [1] s(c_p(x)) -> x [1] minus(c_p(x)) -> s(minus(x)) [1] times(c_s(x), y) -> plus(times(x, y), y) [1] minus(c_s(x)) -> p(minus(x)) [1] plus(c_p(x), y) -> p(plus(x, y)) [1] encArg(0) -> 0 [0] encArg(cons_p(x_1)) -> p(encArg(x_1)) [0] encArg(cons_s(x_1)) -> s(encArg(x_1)) [0] encArg(cons_+(x_1, x_2)) -> plus(encArg(x_1), encArg(x_2)) [0] encArg(cons_minus(x_1)) -> minus(encArg(x_1)) [0] encArg(cons_*(x_1, x_2)) -> times(encArg(x_1), encArg(x_2)) [0] encode_p(x_1) -> p(encArg(x_1)) [0] encode_s(x_1) -> s(encArg(x_1)) [0] encode_+(x_1, x_2) -> plus(encArg(x_1), encArg(x_2)) [0] encode_0 -> 0 [0] encode_minus(x_1) -> minus(encArg(x_1)) [0] encode_*(x_1, x_2) -> times(encArg(x_1), encArg(x_2)) [0] s(x0) -> c_s(x0) [0] p(x0) -> c_p(x0) [0] The TRS has the following type information: plus :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* 0 :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* minus :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* times :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* c_s :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* s :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* c_p :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* p :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* encArg :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* cons_p :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* cons_s :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* cons_+ :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* cons_minus :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* cons_* :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* encode_p :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* encode_s :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* encode_+ :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* encode_0 :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* encode_minus :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* encode_* :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* Rewrite Strategy: INNERMOST ---------------------------------------- (25) CompletionProof (UPPER BOUND(ID)) The TRS is a completely defined constructor system, as every type has a constant constructor and the following rules were added: encArg(v0) -> null_encArg [0] encode_p(v0) -> null_encode_p [0] encode_s(v0) -> null_encode_s [0] encode_+(v0, v1) -> null_encode_+ [0] encode_0 -> null_encode_0 [0] encode_minus(v0) -> null_encode_minus [0] encode_*(v0, v1) -> null_encode_* [0] s(v0) -> null_s [0] p(v0) -> null_p [0] plus(v0, v1) -> null_plus [0] minus(v0) -> null_minus [0] times(v0, v1) -> null_times [0] And the following fresh constants: null_encArg, null_encode_p, null_encode_s, null_encode_+, null_encode_0, null_encode_minus, null_encode_*, null_s, null_p, null_plus, null_minus, null_times ---------------------------------------- (26) 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: plus(0, y) -> y [1] minus(0) -> 0 [1] times(0, y) -> 0 [1] plus(c_s(x), y) -> s(plus(x, y)) [1] times(c_p(x), y) -> plus(times(x, y), minus(y)) [1] p(c_s(x)) -> x [1] s(c_p(x)) -> x [1] minus(c_p(x)) -> s(minus(x)) [1] times(c_s(x), y) -> plus(times(x, y), y) [1] minus(c_s(x)) -> p(minus(x)) [1] plus(c_p(x), y) -> p(plus(x, y)) [1] encArg(0) -> 0 [0] encArg(cons_p(x_1)) -> p(encArg(x_1)) [0] encArg(cons_s(x_1)) -> s(encArg(x_1)) [0] encArg(cons_+(x_1, x_2)) -> plus(encArg(x_1), encArg(x_2)) [0] encArg(cons_minus(x_1)) -> minus(encArg(x_1)) [0] encArg(cons_*(x_1, x_2)) -> times(encArg(x_1), encArg(x_2)) [0] encode_p(x_1) -> p(encArg(x_1)) [0] encode_s(x_1) -> s(encArg(x_1)) [0] encode_+(x_1, x_2) -> plus(encArg(x_1), encArg(x_2)) [0] encode_0 -> 0 [0] encode_minus(x_1) -> minus(encArg(x_1)) [0] encode_*(x_1, x_2) -> times(encArg(x_1), encArg(x_2)) [0] s(x0) -> c_s(x0) [0] p(x0) -> c_p(x0) [0] encArg(v0) -> null_encArg [0] encode_p(v0) -> null_encode_p [0] encode_s(v0) -> null_encode_s [0] encode_+(v0, v1) -> null_encode_+ [0] encode_0 -> null_encode_0 [0] encode_minus(v0) -> null_encode_minus [0] encode_*(v0, v1) -> null_encode_* [0] s(v0) -> null_s [0] p(v0) -> null_p [0] plus(v0, v1) -> null_plus [0] minus(v0) -> null_minus [0] times(v0, v1) -> null_times [0] The TRS has the following type information: plus :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times 0 :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times minus :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times times :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times c_s :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times s :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times c_p :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times p :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times encArg :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times cons_p :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times cons_s :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times cons_+ :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times cons_minus :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times cons_* :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times encode_p :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times encode_s :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times encode_+ :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times encode_0 :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times encode_minus :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times encode_* :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times null_encArg :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times null_encode_p :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times null_encode_s :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times null_encode_+ :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times null_encode_0 :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times null_encode_minus :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times null_encode_* :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times null_s :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times null_p :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times null_plus :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times null_minus :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times null_times :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_*:null_encArg:null_encode_p:null_encode_s:null_encode_+:null_encode_0:null_encode_minus:null_encode_*:null_s:null_p:null_plus:null_minus:null_times Rewrite Strategy: INNERMOST ---------------------------------------- (27) 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_encArg => 0 null_encode_p => 0 null_encode_s => 0 null_encode_+ => 0 null_encode_0 => 0 null_encode_minus => 0 null_encode_* => 0 null_s => 0 null_p => 0 null_plus => 0 null_minus => 0 null_times => 0 ---------------------------------------- (28) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 0 }-> times(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> s(encArg(x_1)) :|: z = 1 + x_1, x_1 >= 0 encArg(z) -{ 0 }-> plus(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> p(encArg(x_1)) :|: z = 1 + x_1, x_1 >= 0 encArg(z) -{ 0 }-> minus(encArg(x_1)) :|: z = 1 + x_1, x_1 >= 0 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_*(z, z') -{ 0 }-> times(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, x_2 >= 0, z = x_1, z' = x_2 encode_*(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 encode_+(z, z') -{ 0 }-> plus(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, x_2 >= 0, z = x_1, z' = x_2 encode_+(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 encode_0 -{ 0 }-> 0 :|: encode_minus(z) -{ 0 }-> minus(encArg(x_1)) :|: x_1 >= 0, z = x_1 encode_minus(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_p(z) -{ 0 }-> p(encArg(x_1)) :|: x_1 >= 0, z = x_1 encode_p(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_s(z) -{ 0 }-> s(encArg(x_1)) :|: x_1 >= 0, z = x_1 encode_s(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 minus(z) -{ 1 }-> s(minus(x)) :|: x >= 0, z = 1 + x minus(z) -{ 1 }-> p(minus(x)) :|: x >= 0, z = 1 + x minus(z) -{ 1 }-> 0 :|: z = 0 minus(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 p(z) -{ 1 }-> x :|: x >= 0, z = 1 + x p(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 p(z) -{ 0 }-> 1 + x0 :|: z = x0, x0 >= 0 plus(z, z') -{ 1 }-> y :|: y >= 0, z = 0, z' = y plus(z, z') -{ 1 }-> s(plus(x, y)) :|: x >= 0, y >= 0, z = 1 + x, z' = y plus(z, z') -{ 1 }-> p(plus(x, y)) :|: x >= 0, y >= 0, z = 1 + x, z' = y plus(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 s(z) -{ 1 }-> x :|: x >= 0, z = 1 + x s(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 s(z) -{ 0 }-> 1 + x0 :|: z = x0, x0 >= 0 times(z, z') -{ 1 }-> plus(times(x, y), y) :|: x >= 0, y >= 0, z = 1 + x, z' = y times(z, z') -{ 1 }-> plus(times(x, y), minus(y)) :|: x >= 0, y >= 0, z = 1 + x, z' = y times(z, z') -{ 1 }-> 0 :|: y >= 0, z = 0, z' = y times(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 Only complete derivations are relevant for the runtime complexity. ---------------------------------------- (29) CompletionProof (UPPER BOUND(ID)) The transformation into a RNTS is sound, since: (a) The obligation is a constructor system where every type has a constant constructor, (b) The following defined symbols do not have to be completely defined, as they can never occur inside other defined symbols: none (c) The following functions are completely defined: times_2 minus_1 plus_2 encArg_1 encode_p_1 encode_s_1 encode_+_2 encode_0 encode_minus_1 encode_*_2 s_1 p_1 Due to the following rules being added: encArg(v0) -> 0 [0] encode_p(v0) -> 0 [0] encode_s(v0) -> 0 [0] encode_+(v0, v1) -> 0 [0] encode_0 -> 0 [0] encode_minus(v0) -> 0 [0] encode_*(v0, v1) -> 0 [0] s(v0) -> 0 [0] p(v0) -> 0 [0] times(v0, v1) -> 0 [0] minus(v0) -> 0 [0] plus(v0, v1) -> 0 [0] And the following fresh constants: none ---------------------------------------- (30) 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: plus(0, y) -> y [1] minus(0) -> 0 [1] times(0, y) -> 0 [1] plus(c_s(x), y) -> s(plus(x, y)) [1] times(c_p(x), y) -> plus(times(x, y), minus(y)) [1] p(c_s(x)) -> x [1] s(c_p(x)) -> x [1] minus(c_p(x)) -> s(minus(x)) [1] times(c_s(x), y) -> plus(times(x, y), y) [1] minus(c_s(x)) -> p(minus(x)) [1] plus(c_p(x), y) -> p(plus(x, y)) [1] encArg(0) -> 0 [0] encArg(cons_p(x_1)) -> p(encArg(x_1)) [0] encArg(cons_s(x_1)) -> s(encArg(x_1)) [0] encArg(cons_+(x_1, x_2)) -> plus(encArg(x_1), encArg(x_2)) [0] encArg(cons_minus(x_1)) -> minus(encArg(x_1)) [0] encArg(cons_*(x_1, x_2)) -> times(encArg(x_1), encArg(x_2)) [0] encode_p(x_1) -> p(encArg(x_1)) [0] encode_s(x_1) -> s(encArg(x_1)) [0] encode_+(x_1, x_2) -> plus(encArg(x_1), encArg(x_2)) [0] encode_0 -> 0 [0] encode_minus(x_1) -> minus(encArg(x_1)) [0] encode_*(x_1, x_2) -> times(encArg(x_1), encArg(x_2)) [0] s(x0) -> c_s(x0) [0] p(x0) -> c_p(x0) [0] encArg(v0) -> 0 [0] encode_p(v0) -> 0 [0] encode_s(v0) -> 0 [0] encode_+(v0, v1) -> 0 [0] encode_0 -> 0 [0] encode_minus(v0) -> 0 [0] encode_*(v0, v1) -> 0 [0] s(v0) -> 0 [0] p(v0) -> 0 [0] times(v0, v1) -> 0 [0] minus(v0) -> 0 [0] plus(v0, v1) -> 0 [0] The TRS has the following type information: plus :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* 0 :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* minus :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* times :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* c_s :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* s :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* c_p :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* p :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* encArg :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* cons_p :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* cons_s :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* cons_+ :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* cons_minus :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* cons_* :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* encode_p :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* encode_s :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* encode_+ :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* encode_0 :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* encode_minus :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* encode_* :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* Rewrite Strategy: INNERMOST ---------------------------------------- (31) NarrowingProof (BOTH BOUNDS(ID, ID)) Narrowed the inner basic terms of all right-hand sides by a single narrowing step. ---------------------------------------- (32) 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: plus(0, y) -> y [1] minus(0) -> 0 [1] times(0, y) -> 0 [1] plus(c_s(0), y) -> s(y) [2] plus(c_s(c_s(x')), y) -> s(s(plus(x', y))) [2] plus(c_s(c_p(x'')), y) -> s(p(plus(x'', y))) [2] plus(c_s(x), y) -> s(0) [1] times(c_p(0), 0) -> plus(0, 0) [3] times(c_p(0), c_p(x3)) -> plus(0, s(minus(x3))) [3] times(c_p(0), c_s(x4)) -> plus(0, p(minus(x4))) [3] times(c_p(0), y) -> plus(0, 0) [2] times(c_p(c_p(x1)), 0) -> plus(plus(times(x1, 0), minus(0)), 0) [3] times(c_p(c_p(x1)), c_p(x5)) -> plus(plus(times(x1, c_p(x5)), minus(c_p(x5))), s(minus(x5))) [3] times(c_p(c_p(x1)), c_s(x6)) -> plus(plus(times(x1, c_s(x6)), minus(c_s(x6))), p(minus(x6))) [3] times(c_p(c_p(x1)), y) -> plus(plus(times(x1, y), minus(y)), 0) [2] times(c_p(c_s(x2)), 0) -> plus(plus(times(x2, 0), 0), 0) [3] times(c_p(c_s(x2)), c_p(x7)) -> plus(plus(times(x2, c_p(x7)), c_p(x7)), s(minus(x7))) [3] times(c_p(c_s(x2)), c_s(x8)) -> plus(plus(times(x2, c_s(x8)), c_s(x8)), p(minus(x8))) [3] times(c_p(c_s(x2)), y) -> plus(plus(times(x2, y), y), 0) [2] times(c_p(x), 0) -> plus(0, 0) [2] times(c_p(x), c_p(x9)) -> plus(0, s(minus(x9))) [2] times(c_p(x), c_s(x10)) -> plus(0, p(minus(x10))) [2] times(c_p(x), y) -> plus(0, 0) [1] p(c_s(x)) -> x [1] s(c_p(x)) -> x [1] minus(c_p(0)) -> s(0) [2] minus(c_p(c_p(x11))) -> s(s(minus(x11))) [2] minus(c_p(c_s(x12))) -> s(p(minus(x12))) [2] minus(c_p(x)) -> s(0) [1] times(c_s(0), y) -> plus(0, y) [2] times(c_s(c_p(x13)), y) -> plus(plus(times(x13, y), minus(y)), y) [2] times(c_s(c_s(x14)), y) -> plus(plus(times(x14, y), y), y) [2] times(c_s(x), y) -> plus(0, y) [1] minus(c_s(0)) -> p(0) [2] minus(c_s(c_p(x15))) -> p(s(minus(x15))) [2] minus(c_s(c_s(x16))) -> p(p(minus(x16))) [2] minus(c_s(x)) -> p(0) [1] plus(c_p(0), y) -> p(y) [2] plus(c_p(c_s(x17)), y) -> p(s(plus(x17, y))) [2] plus(c_p(c_p(x18)), y) -> p(p(plus(x18, y))) [2] plus(c_p(x), y) -> p(0) [1] encArg(0) -> 0 [0] encArg(cons_p(0)) -> p(0) [0] encArg(cons_p(cons_p(x_1'))) -> p(p(encArg(x_1'))) [0] encArg(cons_p(cons_s(x_1''))) -> p(s(encArg(x_1''))) [0] encArg(cons_p(cons_+(x_11, x_2'))) -> p(plus(encArg(x_11), encArg(x_2'))) [0] encArg(cons_p(cons_minus(x_12))) -> p(minus(encArg(x_12))) [0] encArg(cons_p(cons_*(x_13, x_2''))) -> p(times(encArg(x_13), encArg(x_2''))) [0] encArg(cons_p(x_1)) -> p(0) [0] encArg(cons_s(0)) -> s(0) [0] encArg(cons_s(cons_p(x_14))) -> s(p(encArg(x_14))) [0] encArg(cons_s(cons_s(x_15))) -> s(s(encArg(x_15))) [0] encArg(cons_s(cons_+(x_16, x_21))) -> s(plus(encArg(x_16), encArg(x_21))) [0] encArg(cons_s(cons_minus(x_17))) -> s(minus(encArg(x_17))) [0] encArg(cons_s(cons_*(x_18, x_22))) -> s(times(encArg(x_18), encArg(x_22))) [0] encArg(cons_s(x_1)) -> s(0) [0] encArg(cons_+(x_1, x_2)) -> plus(encArg(x_1), encArg(x_2)) [0] encArg(cons_minus(0)) -> minus(0) [0] encArg(cons_minus(cons_p(x_149))) -> minus(p(encArg(x_149))) [0] encArg(cons_minus(cons_s(x_150))) -> minus(s(encArg(x_150))) [0] encArg(cons_minus(cons_+(x_151, x_219))) -> minus(plus(encArg(x_151), encArg(x_219))) [0] encArg(cons_minus(cons_minus(x_152))) -> minus(minus(encArg(x_152))) [0] encArg(cons_minus(cons_*(x_153, x_220))) -> minus(times(encArg(x_153), encArg(x_220))) [0] encArg(cons_minus(x_1)) -> minus(0) [0] encArg(cons_*(x_1, x_2)) -> times(encArg(x_1), encArg(x_2)) [0] encode_p(0) -> p(0) [0] encode_p(cons_p(x_194)) -> p(p(encArg(x_194))) [0] encode_p(cons_s(x_195)) -> p(s(encArg(x_195))) [0] encode_p(cons_+(x_196, x_237)) -> p(plus(encArg(x_196), encArg(x_237))) [0] encode_p(cons_minus(x_197)) -> p(minus(encArg(x_197))) [0] encode_p(cons_*(x_198, x_238)) -> p(times(encArg(x_198), encArg(x_238))) [0] encode_p(x_1) -> p(0) [0] encode_s(0) -> s(0) [0] encode_s(cons_p(x_199)) -> s(p(encArg(x_199))) [0] encode_s(cons_s(x_1100)) -> s(s(encArg(x_1100))) [0] encode_s(cons_+(x_1101, x_239)) -> s(plus(encArg(x_1101), encArg(x_239))) [0] encode_s(cons_minus(x_1102)) -> s(minus(encArg(x_1102))) [0] encode_s(cons_*(x_1103, x_240)) -> s(times(encArg(x_1103), encArg(x_240))) [0] encode_s(x_1) -> s(0) [0] encode_+(x_1, x_2) -> plus(encArg(x_1), encArg(x_2)) [0] encode_0 -> 0 [0] encode_minus(0) -> minus(0) [0] encode_minus(cons_p(x_1144)) -> minus(p(encArg(x_1144))) [0] encode_minus(cons_s(x_1145)) -> minus(s(encArg(x_1145))) [0] encode_minus(cons_+(x_1146, x_257)) -> minus(plus(encArg(x_1146), encArg(x_257))) [0] encode_minus(cons_minus(x_1147)) -> minus(minus(encArg(x_1147))) [0] encode_minus(cons_*(x_1148, x_258)) -> minus(times(encArg(x_1148), encArg(x_258))) [0] encode_minus(x_1) -> minus(0) [0] encode_*(x_1, x_2) -> times(encArg(x_1), encArg(x_2)) [0] s(x0) -> c_s(x0) [0] p(x0) -> c_p(x0) [0] encArg(v0) -> 0 [0] encode_p(v0) -> 0 [0] encode_s(v0) -> 0 [0] encode_+(v0, v1) -> 0 [0] encode_0 -> 0 [0] encode_minus(v0) -> 0 [0] encode_*(v0, v1) -> 0 [0] s(v0) -> 0 [0] p(v0) -> 0 [0] times(v0, v1) -> 0 [0] minus(v0) -> 0 [0] plus(v0, v1) -> 0 [0] The TRS has the following type information: plus :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* 0 :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* minus :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* times :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* c_s :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* s :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* c_p :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* p :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* encArg :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* cons_p :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* cons_s :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* cons_+ :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* cons_minus :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* cons_* :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* encode_p :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* encode_s :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* encode_+ :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* encode_0 :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* encode_minus :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* encode_* :: 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* -> 0:c_s:c_p:cons_p:cons_s:cons_+:cons_minus:cons_* Rewrite Strategy: INNERMOST ---------------------------------------- (33) 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 ---------------------------------------- (34) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 0 }-> times(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> s(times(encArg(x_18), encArg(x_22))) :|: z = 1 + (1 + x_18 + x_22), x_18 >= 0, x_22 >= 0 encArg(z) -{ 0 }-> s(s(encArg(x_15))) :|: x_15 >= 0, z = 1 + (1 + x_15) encArg(z) -{ 0 }-> s(plus(encArg(x_16), encArg(x_21))) :|: z = 1 + (1 + x_16 + x_21), x_16 >= 0, x_21 >= 0 encArg(z) -{ 0 }-> s(p(encArg(x_14))) :|: x_14 >= 0, z = 1 + (1 + x_14) encArg(z) -{ 0 }-> s(minus(encArg(x_17))) :|: x_17 >= 0, z = 1 + (1 + x_17) encArg(z) -{ 0 }-> s(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> s(0) :|: z = 1 + x_1, x_1 >= 0 encArg(z) -{ 0 }-> plus(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> p(times(encArg(x_13), encArg(x_2''))) :|: x_13 >= 0, x_2'' >= 0, z = 1 + (1 + x_13 + x_2'') encArg(z) -{ 0 }-> p(s(encArg(x_1''))) :|: z = 1 + (1 + x_1''), x_1'' >= 0 encArg(z) -{ 0 }-> p(plus(encArg(x_11), encArg(x_2'))) :|: x_11 >= 0, x_2' >= 0, z = 1 + (1 + x_11 + x_2') encArg(z) -{ 0 }-> p(p(encArg(x_1'))) :|: z = 1 + (1 + x_1'), x_1' >= 0 encArg(z) -{ 0 }-> p(minus(encArg(x_12))) :|: z = 1 + (1 + x_12), x_12 >= 0 encArg(z) -{ 0 }-> p(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> p(0) :|: z = 1 + x_1, x_1 >= 0 encArg(z) -{ 0 }-> minus(times(encArg(x_153), encArg(x_220))) :|: x_153 >= 0, z = 1 + (1 + x_153 + x_220), x_220 >= 0 encArg(z) -{ 0 }-> minus(s(encArg(x_150))) :|: z = 1 + (1 + x_150), x_150 >= 0 encArg(z) -{ 0 }-> minus(plus(encArg(x_151), encArg(x_219))) :|: z = 1 + (1 + x_151 + x_219), x_219 >= 0, x_151 >= 0 encArg(z) -{ 0 }-> minus(p(encArg(x_149))) :|: z = 1 + (1 + x_149), x_149 >= 0 encArg(z) -{ 0 }-> minus(minus(encArg(x_152))) :|: z = 1 + (1 + x_152), x_152 >= 0 encArg(z) -{ 0 }-> minus(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> minus(0) :|: z = 1 + x_1, x_1 >= 0 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_*(z, z') -{ 0 }-> times(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, x_2 >= 0, z = x_1, z' = x_2 encode_*(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 encode_+(z, z') -{ 0 }-> plus(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, x_2 >= 0, z = x_1, z' = x_2 encode_+(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 encode_0 -{ 0 }-> 0 :|: encode_minus(z) -{ 0 }-> minus(times(encArg(x_1148), encArg(x_258))) :|: x_258 >= 0, x_1148 >= 0, z = 1 + x_1148 + x_258 encode_minus(z) -{ 0 }-> minus(s(encArg(x_1145))) :|: z = 1 + x_1145, x_1145 >= 0 encode_minus(z) -{ 0 }-> minus(plus(encArg(x_1146), encArg(x_257))) :|: z = 1 + x_1146 + x_257, x_1146 >= 0, x_257 >= 0 encode_minus(z) -{ 0 }-> minus(p(encArg(x_1144))) :|: z = 1 + x_1144, x_1144 >= 0 encode_minus(z) -{ 0 }-> minus(minus(encArg(x_1147))) :|: z = 1 + x_1147, x_1147 >= 0 encode_minus(z) -{ 0 }-> minus(0) :|: z = 0 encode_minus(z) -{ 0 }-> minus(0) :|: x_1 >= 0, z = x_1 encode_minus(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_p(z) -{ 0 }-> p(times(encArg(x_198), encArg(x_238))) :|: z = 1 + x_198 + x_238, x_198 >= 0, x_238 >= 0 encode_p(z) -{ 0 }-> p(s(encArg(x_195))) :|: x_195 >= 0, z = 1 + x_195 encode_p(z) -{ 0 }-> p(plus(encArg(x_196), encArg(x_237))) :|: x_237 >= 0, x_196 >= 0, z = 1 + x_196 + x_237 encode_p(z) -{ 0 }-> p(p(encArg(x_194))) :|: x_194 >= 0, z = 1 + x_194 encode_p(z) -{ 0 }-> p(minus(encArg(x_197))) :|: x_197 >= 0, z = 1 + x_197 encode_p(z) -{ 0 }-> p(0) :|: z = 0 encode_p(z) -{ 0 }-> p(0) :|: x_1 >= 0, z = x_1 encode_p(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_s(z) -{ 0 }-> s(times(encArg(x_1103), encArg(x_240))) :|: z = 1 + x_1103 + x_240, x_1103 >= 0, x_240 >= 0 encode_s(z) -{ 0 }-> s(s(encArg(x_1100))) :|: x_1100 >= 0, z = 1 + x_1100 encode_s(z) -{ 0 }-> s(plus(encArg(x_1101), encArg(x_239))) :|: x_1101 >= 0, x_239 >= 0, z = 1 + x_1101 + x_239 encode_s(z) -{ 0 }-> s(p(encArg(x_199))) :|: x_199 >= 0, z = 1 + x_199 encode_s(z) -{ 0 }-> s(minus(encArg(x_1102))) :|: x_1102 >= 0, z = 1 + x_1102 encode_s(z) -{ 0 }-> s(0) :|: z = 0 encode_s(z) -{ 0 }-> s(0) :|: x_1 >= 0, z = x_1 encode_s(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 minus(z) -{ 2 }-> s(s(minus(x11))) :|: z = 1 + (1 + x11), x11 >= 0 minus(z) -{ 2 }-> s(p(minus(x12))) :|: x12 >= 0, z = 1 + (1 + x12) minus(z) -{ 2 }-> s(0) :|: z = 1 + 0 minus(z) -{ 1 }-> s(0) :|: x >= 0, z = 1 + x minus(z) -{ 2 }-> p(s(minus(x15))) :|: z = 1 + (1 + x15), x15 >= 0 minus(z) -{ 2 }-> p(p(minus(x16))) :|: z = 1 + (1 + x16), x16 >= 0 minus(z) -{ 2 }-> p(0) :|: z = 1 + 0 minus(z) -{ 1 }-> p(0) :|: x >= 0, z = 1 + x minus(z) -{ 1 }-> 0 :|: z = 0 minus(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 p(z) -{ 1 }-> x :|: x >= 0, z = 1 + x p(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 p(z) -{ 0 }-> 1 + x0 :|: z = x0, x0 >= 0 plus(z, z') -{ 1 }-> y :|: y >= 0, z = 0, z' = y plus(z, z') -{ 2 }-> s(y) :|: z = 1 + 0, y >= 0, z' = y plus(z, z') -{ 2 }-> s(s(plus(x', y))) :|: x' >= 0, y >= 0, z = 1 + (1 + x'), z' = y plus(z, z') -{ 2 }-> s(p(plus(x'', y))) :|: y >= 0, x'' >= 0, z = 1 + (1 + x''), z' = y plus(z, z') -{ 1 }-> s(0) :|: x >= 0, y >= 0, z = 1 + x, z' = y plus(z, z') -{ 2 }-> p(y) :|: z = 1 + 0, y >= 0, z' = y plus(z, z') -{ 2 }-> p(s(plus(x17, y))) :|: x17 >= 0, y >= 0, z = 1 + (1 + x17), z' = y plus(z, z') -{ 2 }-> p(p(plus(x18, y))) :|: y >= 0, x18 >= 0, z = 1 + (1 + x18), z' = y plus(z, z') -{ 1 }-> p(0) :|: x >= 0, y >= 0, z = 1 + x, z' = y plus(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 s(z) -{ 1 }-> x :|: x >= 0, z = 1 + x s(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 s(z) -{ 0 }-> 1 + x0 :|: z = x0, x0 >= 0 times(z, z') -{ 2 }-> plus(plus(times(x1, y), minus(y)), 0) :|: z = 1 + (1 + x1), x1 >= 0, y >= 0, z' = y times(z, z') -{ 3 }-> plus(plus(times(x1, 0), minus(0)), 0) :|: z = 1 + (1 + x1), x1 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(x1, 1 + x5), minus(1 + x5)), s(minus(x5))) :|: z = 1 + (1 + x1), x1 >= 0, x5 >= 0, z' = 1 + x5 times(z, z') -{ 3 }-> plus(plus(times(x1, 1 + x6), minus(1 + x6)), p(minus(x6))) :|: z' = 1 + x6, z = 1 + (1 + x1), x1 >= 0, x6 >= 0 times(z, z') -{ 2 }-> plus(plus(times(x13, y), minus(y)), y) :|: z = 1 + (1 + x13), x13 >= 0, y >= 0, z' = y times(z, z') -{ 2 }-> plus(plus(times(x14, y), y), y) :|: z = 1 + (1 + x14), y >= 0, x14 >= 0, z' = y times(z, z') -{ 2 }-> plus(plus(times(x2, y), y), 0) :|: z = 1 + (1 + x2), y >= 0, z' = y, x2 >= 0 times(z, z') -{ 3 }-> plus(plus(times(x2, 0), 0), 0) :|: z = 1 + (1 + x2), x2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(x2, 1 + x7), 1 + x7), s(minus(x7))) :|: z' = 1 + x7, z = 1 + (1 + x2), x7 >= 0, x2 >= 0 times(z, z') -{ 3 }-> plus(plus(times(x2, 1 + x8), 1 + x8), p(minus(x8))) :|: z = 1 + (1 + x2), z' = 1 + x8, x8 >= 0, x2 >= 0 times(z, z') -{ 2 }-> plus(0, y) :|: z = 1 + 0, y >= 0, z' = y times(z, z') -{ 1 }-> plus(0, y) :|: x >= 0, y >= 0, z = 1 + x, z' = y times(z, z') -{ 3 }-> plus(0, s(minus(x3))) :|: z' = 1 + x3, z = 1 + 0, x3 >= 0 times(z, z') -{ 2 }-> plus(0, s(minus(x9))) :|: z' = 1 + x9, x >= 0, z = 1 + x, x9 >= 0 times(z, z') -{ 2 }-> plus(0, p(minus(x10))) :|: z' = 1 + x10, x >= 0, z = 1 + x, x10 >= 0 times(z, z') -{ 3 }-> plus(0, p(minus(x4))) :|: x4 >= 0, z = 1 + 0, z' = 1 + x4 times(z, z') -{ 3 }-> plus(0, 0) :|: z = 1 + 0, z' = 0 times(z, z') -{ 2 }-> plus(0, 0) :|: z = 1 + 0, y >= 0, z' = y times(z, z') -{ 2 }-> plus(0, 0) :|: x >= 0, z = 1 + x, z' = 0 times(z, z') -{ 1 }-> plus(0, 0) :|: x >= 0, y >= 0, z = 1 + x, z' = y times(z, z') -{ 1 }-> 0 :|: y >= 0, z = 0, z' = y times(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 ---------------------------------------- (35) 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 p(z) -{ 0 }-> 1 + x0 :|: z = x0, x0 >= 0 s(z) -{ 1 }-> x :|: x >= 0, z = 1 + x s(z) -{ 0 }-> 1 + x0 :|: z = x0, x0 >= 0 s(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 ---------------------------------------- (36) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 0 }-> times(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> s(times(encArg(x_18), encArg(x_22))) :|: z = 1 + (1 + x_18 + x_22), x_18 >= 0, x_22 >= 0 encArg(z) -{ 0 }-> s(s(encArg(x_15))) :|: x_15 >= 0, z = 1 + (1 + x_15) encArg(z) -{ 0 }-> s(plus(encArg(x_16), encArg(x_21))) :|: z = 1 + (1 + x_16 + x_21), x_16 >= 0, x_21 >= 0 encArg(z) -{ 0 }-> s(p(encArg(x_14))) :|: x_14 >= 0, z = 1 + (1 + x_14) encArg(z) -{ 0 }-> s(minus(encArg(x_17))) :|: x_17 >= 0, z = 1 + (1 + x_17) encArg(z) -{ 0 }-> plus(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> p(times(encArg(x_13), encArg(x_2''))) :|: x_13 >= 0, x_2'' >= 0, z = 1 + (1 + x_13 + x_2'') encArg(z) -{ 0 }-> p(s(encArg(x_1''))) :|: z = 1 + (1 + x_1''), x_1'' >= 0 encArg(z) -{ 0 }-> p(plus(encArg(x_11), encArg(x_2'))) :|: x_11 >= 0, x_2' >= 0, z = 1 + (1 + x_11 + x_2') encArg(z) -{ 0 }-> p(p(encArg(x_1'))) :|: z = 1 + (1 + x_1'), x_1' >= 0 encArg(z) -{ 0 }-> p(minus(encArg(x_12))) :|: z = 1 + (1 + x_12), x_12 >= 0 encArg(z) -{ 0 }-> minus(times(encArg(x_153), encArg(x_220))) :|: x_153 >= 0, z = 1 + (1 + x_153 + x_220), x_220 >= 0 encArg(z) -{ 0 }-> minus(s(encArg(x_150))) :|: z = 1 + (1 + x_150), x_150 >= 0 encArg(z) -{ 0 }-> minus(plus(encArg(x_151), encArg(x_219))) :|: z = 1 + (1 + x_151 + x_219), x_219 >= 0, x_151 >= 0 encArg(z) -{ 0 }-> minus(p(encArg(x_149))) :|: z = 1 + (1 + x_149), x_149 >= 0 encArg(z) -{ 0 }-> minus(minus(encArg(x_152))) :|: z = 1 + (1 + x_152), x_152 >= 0 encArg(z) -{ 0 }-> minus(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> minus(0) :|: z = 1 + x_1, x_1 >= 0 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encArg(z) -{ 0 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 0 :|: z = 1 + x_1, x_1 >= 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 encArg(z) -{ 0 }-> 1 + x0 :|: z = 1 + x_1, x_1 >= 0, 0 = x0, x0 >= 0 encode_*(z, z') -{ 0 }-> times(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, x_2 >= 0, z = x_1, z' = x_2 encode_*(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 encode_+(z, z') -{ 0 }-> plus(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, x_2 >= 0, z = x_1, z' = x_2 encode_+(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 encode_0 -{ 0 }-> 0 :|: encode_minus(z) -{ 0 }-> minus(times(encArg(x_1148), encArg(x_258))) :|: x_258 >= 0, x_1148 >= 0, z = 1 + x_1148 + x_258 encode_minus(z) -{ 0 }-> minus(s(encArg(x_1145))) :|: z = 1 + x_1145, x_1145 >= 0 encode_minus(z) -{ 0 }-> minus(plus(encArg(x_1146), encArg(x_257))) :|: z = 1 + x_1146 + x_257, x_1146 >= 0, x_257 >= 0 encode_minus(z) -{ 0 }-> minus(p(encArg(x_1144))) :|: z = 1 + x_1144, x_1144 >= 0 encode_minus(z) -{ 0 }-> minus(minus(encArg(x_1147))) :|: z = 1 + x_1147, x_1147 >= 0 encode_minus(z) -{ 0 }-> minus(0) :|: z = 0 encode_minus(z) -{ 0 }-> minus(0) :|: x_1 >= 0, z = x_1 encode_minus(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_p(z) -{ 0 }-> p(times(encArg(x_198), encArg(x_238))) :|: z = 1 + x_198 + x_238, x_198 >= 0, x_238 >= 0 encode_p(z) -{ 0 }-> p(s(encArg(x_195))) :|: x_195 >= 0, z = 1 + x_195 encode_p(z) -{ 0 }-> p(plus(encArg(x_196), encArg(x_237))) :|: x_237 >= 0, x_196 >= 0, z = 1 + x_196 + x_237 encode_p(z) -{ 0 }-> p(p(encArg(x_194))) :|: x_194 >= 0, z = 1 + x_194 encode_p(z) -{ 0 }-> p(minus(encArg(x_197))) :|: x_197 >= 0, z = 1 + x_197 encode_p(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_p(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 0 :|: x_1 >= 0, z = x_1, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_p(z) -{ 0 }-> 1 + x0 :|: x_1 >= 0, z = x_1, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> s(times(encArg(x_1103), encArg(x_240))) :|: z = 1 + x_1103 + x_240, x_1103 >= 0, x_240 >= 0 encode_s(z) -{ 0 }-> s(s(encArg(x_1100))) :|: x_1100 >= 0, z = 1 + x_1100 encode_s(z) -{ 0 }-> s(plus(encArg(x_1101), encArg(x_239))) :|: x_1101 >= 0, x_239 >= 0, z = 1 + x_1101 + x_239 encode_s(z) -{ 0 }-> s(p(encArg(x_199))) :|: x_199 >= 0, z = 1 + x_199 encode_s(z) -{ 0 }-> s(minus(encArg(x_1102))) :|: x_1102 >= 0, z = 1 + x_1102 encode_s(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_s(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 0 :|: x_1 >= 0, z = x_1, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> 1 + x0 :|: x_1 >= 0, z = x_1, 0 = x0, x0 >= 0 minus(z) -{ 2 }-> s(s(minus(x11))) :|: z = 1 + (1 + x11), x11 >= 0 minus(z) -{ 2 }-> s(p(minus(x12))) :|: x12 >= 0, z = 1 + (1 + x12) minus(z) -{ 2 }-> p(s(minus(x15))) :|: z = 1 + (1 + x15), x15 >= 0 minus(z) -{ 2 }-> p(p(minus(x16))) :|: z = 1 + (1 + x16), x16 >= 0 minus(z) -{ 1 }-> 0 :|: z = 0 minus(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 minus(z) -{ 2 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 minus(z) -{ 1 }-> 0 :|: x >= 0, z = 1 + x, v0 >= 0, 0 = v0 minus(z) -{ 2 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 minus(z) -{ 1 }-> 1 + x0 :|: x >= 0, z = 1 + x, 0 = x0, x0 >= 0 p(z) -{ 1 }-> x :|: x >= 0, z = 1 + x p(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 p(z) -{ 0 }-> 1 + x0 :|: z = x0, x0 >= 0 plus(z, z') -{ 3 }-> x :|: z = 1 + 0, y >= 0, z' = y, x >= 0, y = 1 + x plus(z, z') -{ 1 }-> y :|: y >= 0, z = 0, z' = y plus(z, z') -{ 2 }-> s(s(plus(x', y))) :|: x' >= 0, y >= 0, z = 1 + (1 + x'), z' = y plus(z, z') -{ 2 }-> s(p(plus(x'', y))) :|: y >= 0, x'' >= 0, z = 1 + (1 + x''), z' = y plus(z, z') -{ 2 }-> p(s(plus(x17, y))) :|: x17 >= 0, y >= 0, z = 1 + (1 + x17), z' = y plus(z, z') -{ 2 }-> p(p(plus(x18, y))) :|: y >= 0, x18 >= 0, z = 1 + (1 + x18), z' = y plus(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 plus(z, z') -{ 2 }-> 0 :|: z = 1 + 0, y >= 0, z' = y, v0 >= 0, y = v0 plus(z, z') -{ 1 }-> 0 :|: x >= 0, y >= 0, z = 1 + x, z' = y, v0 >= 0, 0 = v0 plus(z, z') -{ 2 }-> 1 + x0 :|: z = 1 + 0, y >= 0, z' = y, y = x0, x0 >= 0 plus(z, z') -{ 1 }-> 1 + x0 :|: x >= 0, y >= 0, z = 1 + x, z' = y, 0 = x0, x0 >= 0 s(z) -{ 1 }-> x :|: x >= 0, z = 1 + x s(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 s(z) -{ 0 }-> 1 + x0 :|: z = x0, x0 >= 0 times(z, z') -{ 2 }-> plus(plus(times(x1, y), minus(y)), 0) :|: z = 1 + (1 + x1), x1 >= 0, y >= 0, z' = y times(z, z') -{ 3 }-> plus(plus(times(x1, 0), minus(0)), 0) :|: z = 1 + (1 + x1), x1 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(x1, 1 + x5), minus(1 + x5)), s(minus(x5))) :|: z = 1 + (1 + x1), x1 >= 0, x5 >= 0, z' = 1 + x5 times(z, z') -{ 3 }-> plus(plus(times(x1, 1 + x6), minus(1 + x6)), p(minus(x6))) :|: z' = 1 + x6, z = 1 + (1 + x1), x1 >= 0, x6 >= 0 times(z, z') -{ 2 }-> plus(plus(times(x13, y), minus(y)), y) :|: z = 1 + (1 + x13), x13 >= 0, y >= 0, z' = y times(z, z') -{ 2 }-> plus(plus(times(x14, y), y), y) :|: z = 1 + (1 + x14), y >= 0, x14 >= 0, z' = y times(z, z') -{ 2 }-> plus(plus(times(x2, y), y), 0) :|: z = 1 + (1 + x2), y >= 0, z' = y, x2 >= 0 times(z, z') -{ 3 }-> plus(plus(times(x2, 0), 0), 0) :|: z = 1 + (1 + x2), x2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(x2, 1 + x7), 1 + x7), s(minus(x7))) :|: z' = 1 + x7, z = 1 + (1 + x2), x7 >= 0, x2 >= 0 times(z, z') -{ 3 }-> plus(plus(times(x2, 1 + x8), 1 + x8), p(minus(x8))) :|: z = 1 + (1 + x2), z' = 1 + x8, x8 >= 0, x2 >= 0 times(z, z') -{ 2 }-> plus(0, y) :|: z = 1 + 0, y >= 0, z' = y times(z, z') -{ 1 }-> plus(0, y) :|: x >= 0, y >= 0, z = 1 + x, z' = y times(z, z') -{ 3 }-> plus(0, s(minus(x3))) :|: z' = 1 + x3, z = 1 + 0, x3 >= 0 times(z, z') -{ 2 }-> plus(0, s(minus(x9))) :|: z' = 1 + x9, x >= 0, z = 1 + x, x9 >= 0 times(z, z') -{ 2 }-> plus(0, p(minus(x10))) :|: z' = 1 + x10, x >= 0, z = 1 + x, x10 >= 0 times(z, z') -{ 3 }-> plus(0, p(minus(x4))) :|: x4 >= 0, z = 1 + 0, z' = 1 + x4 times(z, z') -{ 3 }-> plus(0, 0) :|: z = 1 + 0, z' = 0 times(z, z') -{ 2 }-> plus(0, 0) :|: z = 1 + 0, y >= 0, z' = y times(z, z') -{ 2 }-> plus(0, 0) :|: x >= 0, z = 1 + x, z' = 0 times(z, z') -{ 1 }-> plus(0, 0) :|: x >= 0, y >= 0, z = 1 + x, z' = y times(z, z') -{ 1 }-> 0 :|: y >= 0, z = 0, z' = y times(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 ---------------------------------------- (37) SimplificationProof (BOTH BOUNDS(ID, ID)) Simplified the RNTS by moving equalities from the constraints into the right-hand sides. ---------------------------------------- (38) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 0 }-> times(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> s(times(encArg(x_18), encArg(x_22))) :|: z = 1 + (1 + x_18 + x_22), x_18 >= 0, x_22 >= 0 encArg(z) -{ 0 }-> s(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(plus(encArg(x_16), encArg(x_21))) :|: z = 1 + (1 + x_16 + x_21), x_16 >= 0, x_21 >= 0 encArg(z) -{ 0 }-> s(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> plus(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> p(times(encArg(x_13), encArg(x_2''))) :|: x_13 >= 0, x_2'' >= 0, z = 1 + (1 + x_13 + x_2'') encArg(z) -{ 0 }-> p(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(plus(encArg(x_11), encArg(x_2'))) :|: x_11 >= 0, x_2' >= 0, z = 1 + (1 + x_11 + x_2') encArg(z) -{ 0 }-> p(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(times(encArg(x_153), encArg(x_220))) :|: x_153 >= 0, z = 1 + (1 + x_153 + x_220), x_220 >= 0 encArg(z) -{ 0 }-> minus(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(plus(encArg(x_151), encArg(x_219))) :|: z = 1 + (1 + x_151 + x_219), x_219 >= 0, x_151 >= 0 encArg(z) -{ 0 }-> minus(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> minus(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 encArg(z) -{ 0 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 encode_*(z, z') -{ 0 }-> times(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_*(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> plus(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_0 -{ 0 }-> 0 :|: encode_minus(z) -{ 0 }-> minus(times(encArg(x_1148), encArg(x_258))) :|: x_258 >= 0, x_1148 >= 0, z = 1 + x_1148 + x_258 encode_minus(z) -{ 0 }-> minus(s(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(plus(encArg(x_1146), encArg(x_257))) :|: z = 1 + x_1146 + x_257, x_1146 >= 0, x_257 >= 0 encode_minus(z) -{ 0 }-> minus(p(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(0) :|: z = 0 encode_minus(z) -{ 0 }-> minus(0) :|: z >= 0 encode_minus(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> p(times(encArg(x_198), encArg(x_238))) :|: z = 1 + x_198 + x_238, x_198 >= 0, x_238 >= 0 encode_p(z) -{ 0 }-> p(s(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(plus(encArg(x_196), encArg(x_237))) :|: x_237 >= 0, x_196 >= 0, z = 1 + x_196 + x_237 encode_p(z) -{ 0 }-> p(p(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_p(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> s(times(encArg(x_1103), encArg(x_240))) :|: z = 1 + x_1103 + x_240, x_1103 >= 0, x_240 >= 0 encode_s(z) -{ 0 }-> s(s(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(plus(encArg(x_1101), encArg(x_239))) :|: x_1101 >= 0, x_239 >= 0, z = 1 + x_1101 + x_239 encode_s(z) -{ 0 }-> s(p(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 minus(z) -{ 2 }-> s(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> s(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 1 }-> 0 :|: z = 0 minus(z) -{ 0 }-> 0 :|: z >= 0 minus(z) -{ 2 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 minus(z) -{ 1 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 minus(z) -{ 2 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 minus(z) -{ 1 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 p(z) -{ 0 }-> 1 + z :|: z >= 0 plus(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 plus(z, z') -{ 2 }-> s(s(plus(z - 2, z'))) :|: z - 2 >= 0, z' >= 0 plus(z, z') -{ 2 }-> s(p(plus(z - 2, z'))) :|: z' >= 0, z - 2 >= 0 plus(z, z') -{ 2 }-> p(s(plus(z - 2, z'))) :|: z - 2 >= 0, z' >= 0 plus(z, z') -{ 2 }-> p(p(plus(z - 2, z'))) :|: z' >= 0, z - 2 >= 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 2 }-> 0 :|: z = 1 + 0, z' >= 0 plus(z, z') -{ 1 }-> 0 :|: z - 1 >= 0, z' >= 0, v0 >= 0, 0 = v0 plus(z, z') -{ 3 }-> z' - 1 :|: z = 1 + 0, z' >= 0, z' - 1 >= 0 plus(z, z') -{ 1 }-> 1 + x0 :|: z - 1 >= 0, z' >= 0, 0 = x0, x0 >= 0 plus(z, z') -{ 2 }-> 1 + z' :|: z = 1 + 0, z' >= 0 s(z) -{ 0 }-> 0 :|: z >= 0 s(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 s(z) -{ 0 }-> 1 + z :|: z >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), z') :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), 0) :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), z') :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), 0) :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), minus(0)), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), 0), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), s(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), p(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), s(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), p(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(0, z') :|: z = 1 + 0, z' >= 0 times(z, z') -{ 1 }-> plus(0, z') :|: z - 1 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(0, s(minus(z' - 1))) :|: z = 1 + 0, z' - 1 >= 0 times(z, z') -{ 2 }-> plus(0, s(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, p(minus(z' - 1))) :|: z' - 1 >= 0, z = 1 + 0 times(z, z') -{ 2 }-> plus(0, p(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, 0) :|: z = 1 + 0, z' = 0 times(z, z') -{ 2 }-> plus(0, 0) :|: z = 1 + 0, z' >= 0 times(z, z') -{ 2 }-> plus(0, 0) :|: z - 1 >= 0, z' = 0 times(z, z') -{ 1 }-> plus(0, 0) :|: z - 1 >= 0, z' >= 0 times(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 times(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 ---------------------------------------- (39) CpxRntsAnalysisOrderProof (BOTH BOUNDS(ID, ID)) Found the following analysis order by SCC decomposition: { encode_0 } { s } { p } { plus } { minus } { times } { encArg } { encode_p } { encode_* } { encode_minus } { encode_+ } { encode_s } ---------------------------------------- (40) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 0 }-> times(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> s(times(encArg(x_18), encArg(x_22))) :|: z = 1 + (1 + x_18 + x_22), x_18 >= 0, x_22 >= 0 encArg(z) -{ 0 }-> s(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(plus(encArg(x_16), encArg(x_21))) :|: z = 1 + (1 + x_16 + x_21), x_16 >= 0, x_21 >= 0 encArg(z) -{ 0 }-> s(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> plus(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> p(times(encArg(x_13), encArg(x_2''))) :|: x_13 >= 0, x_2'' >= 0, z = 1 + (1 + x_13 + x_2'') encArg(z) -{ 0 }-> p(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(plus(encArg(x_11), encArg(x_2'))) :|: x_11 >= 0, x_2' >= 0, z = 1 + (1 + x_11 + x_2') encArg(z) -{ 0 }-> p(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(times(encArg(x_153), encArg(x_220))) :|: x_153 >= 0, z = 1 + (1 + x_153 + x_220), x_220 >= 0 encArg(z) -{ 0 }-> minus(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(plus(encArg(x_151), encArg(x_219))) :|: z = 1 + (1 + x_151 + x_219), x_219 >= 0, x_151 >= 0 encArg(z) -{ 0 }-> minus(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> minus(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 encArg(z) -{ 0 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 encode_*(z, z') -{ 0 }-> times(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_*(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> plus(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_0 -{ 0 }-> 0 :|: encode_minus(z) -{ 0 }-> minus(times(encArg(x_1148), encArg(x_258))) :|: x_258 >= 0, x_1148 >= 0, z = 1 + x_1148 + x_258 encode_minus(z) -{ 0 }-> minus(s(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(plus(encArg(x_1146), encArg(x_257))) :|: z = 1 + x_1146 + x_257, x_1146 >= 0, x_257 >= 0 encode_minus(z) -{ 0 }-> minus(p(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(0) :|: z = 0 encode_minus(z) -{ 0 }-> minus(0) :|: z >= 0 encode_minus(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> p(times(encArg(x_198), encArg(x_238))) :|: z = 1 + x_198 + x_238, x_198 >= 0, x_238 >= 0 encode_p(z) -{ 0 }-> p(s(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(plus(encArg(x_196), encArg(x_237))) :|: x_237 >= 0, x_196 >= 0, z = 1 + x_196 + x_237 encode_p(z) -{ 0 }-> p(p(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_p(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> s(times(encArg(x_1103), encArg(x_240))) :|: z = 1 + x_1103 + x_240, x_1103 >= 0, x_240 >= 0 encode_s(z) -{ 0 }-> s(s(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(plus(encArg(x_1101), encArg(x_239))) :|: x_1101 >= 0, x_239 >= 0, z = 1 + x_1101 + x_239 encode_s(z) -{ 0 }-> s(p(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 minus(z) -{ 2 }-> s(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> s(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 1 }-> 0 :|: z = 0 minus(z) -{ 0 }-> 0 :|: z >= 0 minus(z) -{ 2 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 minus(z) -{ 1 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 minus(z) -{ 2 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 minus(z) -{ 1 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 p(z) -{ 0 }-> 1 + z :|: z >= 0 plus(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 plus(z, z') -{ 2 }-> s(s(plus(z - 2, z'))) :|: z - 2 >= 0, z' >= 0 plus(z, z') -{ 2 }-> s(p(plus(z - 2, z'))) :|: z' >= 0, z - 2 >= 0 plus(z, z') -{ 2 }-> p(s(plus(z - 2, z'))) :|: z - 2 >= 0, z' >= 0 plus(z, z') -{ 2 }-> p(p(plus(z - 2, z'))) :|: z' >= 0, z - 2 >= 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 2 }-> 0 :|: z = 1 + 0, z' >= 0 plus(z, z') -{ 1 }-> 0 :|: z - 1 >= 0, z' >= 0, v0 >= 0, 0 = v0 plus(z, z') -{ 3 }-> z' - 1 :|: z = 1 + 0, z' >= 0, z' - 1 >= 0 plus(z, z') -{ 1 }-> 1 + x0 :|: z - 1 >= 0, z' >= 0, 0 = x0, x0 >= 0 plus(z, z') -{ 2 }-> 1 + z' :|: z = 1 + 0, z' >= 0 s(z) -{ 0 }-> 0 :|: z >= 0 s(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 s(z) -{ 0 }-> 1 + z :|: z >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), z') :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), 0) :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), z') :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), 0) :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), minus(0)), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), 0), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), s(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), p(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), s(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), p(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(0, z') :|: z = 1 + 0, z' >= 0 times(z, z') -{ 1 }-> plus(0, z') :|: z - 1 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(0, s(minus(z' - 1))) :|: z = 1 + 0, z' - 1 >= 0 times(z, z') -{ 2 }-> plus(0, s(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, p(minus(z' - 1))) :|: z' - 1 >= 0, z = 1 + 0 times(z, z') -{ 2 }-> plus(0, p(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, 0) :|: z = 1 + 0, z' = 0 times(z, z') -{ 2 }-> plus(0, 0) :|: z = 1 + 0, z' >= 0 times(z, z') -{ 2 }-> plus(0, 0) :|: z - 1 >= 0, z' = 0 times(z, z') -{ 1 }-> plus(0, 0) :|: z - 1 >= 0, z' >= 0 times(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 times(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_0}, {s}, {p}, {plus}, {minus}, {times}, {encArg}, {encode_p}, {encode_*}, {encode_minus}, {encode_+}, {encode_s} ---------------------------------------- (41) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (42) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 0 }-> times(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> s(times(encArg(x_18), encArg(x_22))) :|: z = 1 + (1 + x_18 + x_22), x_18 >= 0, x_22 >= 0 encArg(z) -{ 0 }-> s(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(plus(encArg(x_16), encArg(x_21))) :|: z = 1 + (1 + x_16 + x_21), x_16 >= 0, x_21 >= 0 encArg(z) -{ 0 }-> s(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> plus(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> p(times(encArg(x_13), encArg(x_2''))) :|: x_13 >= 0, x_2'' >= 0, z = 1 + (1 + x_13 + x_2'') encArg(z) -{ 0 }-> p(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(plus(encArg(x_11), encArg(x_2'))) :|: x_11 >= 0, x_2' >= 0, z = 1 + (1 + x_11 + x_2') encArg(z) -{ 0 }-> p(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(times(encArg(x_153), encArg(x_220))) :|: x_153 >= 0, z = 1 + (1 + x_153 + x_220), x_220 >= 0 encArg(z) -{ 0 }-> minus(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(plus(encArg(x_151), encArg(x_219))) :|: z = 1 + (1 + x_151 + x_219), x_219 >= 0, x_151 >= 0 encArg(z) -{ 0 }-> minus(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> minus(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 encArg(z) -{ 0 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 encode_*(z, z') -{ 0 }-> times(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_*(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> plus(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_0 -{ 0 }-> 0 :|: encode_minus(z) -{ 0 }-> minus(times(encArg(x_1148), encArg(x_258))) :|: x_258 >= 0, x_1148 >= 0, z = 1 + x_1148 + x_258 encode_minus(z) -{ 0 }-> minus(s(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(plus(encArg(x_1146), encArg(x_257))) :|: z = 1 + x_1146 + x_257, x_1146 >= 0, x_257 >= 0 encode_minus(z) -{ 0 }-> minus(p(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(0) :|: z = 0 encode_minus(z) -{ 0 }-> minus(0) :|: z >= 0 encode_minus(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> p(times(encArg(x_198), encArg(x_238))) :|: z = 1 + x_198 + x_238, x_198 >= 0, x_238 >= 0 encode_p(z) -{ 0 }-> p(s(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(plus(encArg(x_196), encArg(x_237))) :|: x_237 >= 0, x_196 >= 0, z = 1 + x_196 + x_237 encode_p(z) -{ 0 }-> p(p(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_p(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> s(times(encArg(x_1103), encArg(x_240))) :|: z = 1 + x_1103 + x_240, x_1103 >= 0, x_240 >= 0 encode_s(z) -{ 0 }-> s(s(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(plus(encArg(x_1101), encArg(x_239))) :|: x_1101 >= 0, x_239 >= 0, z = 1 + x_1101 + x_239 encode_s(z) -{ 0 }-> s(p(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 minus(z) -{ 2 }-> s(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> s(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 1 }-> 0 :|: z = 0 minus(z) -{ 0 }-> 0 :|: z >= 0 minus(z) -{ 2 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 minus(z) -{ 1 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 minus(z) -{ 2 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 minus(z) -{ 1 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 p(z) -{ 0 }-> 1 + z :|: z >= 0 plus(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 plus(z, z') -{ 2 }-> s(s(plus(z - 2, z'))) :|: z - 2 >= 0, z' >= 0 plus(z, z') -{ 2 }-> s(p(plus(z - 2, z'))) :|: z' >= 0, z - 2 >= 0 plus(z, z') -{ 2 }-> p(s(plus(z - 2, z'))) :|: z - 2 >= 0, z' >= 0 plus(z, z') -{ 2 }-> p(p(plus(z - 2, z'))) :|: z' >= 0, z - 2 >= 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 2 }-> 0 :|: z = 1 + 0, z' >= 0 plus(z, z') -{ 1 }-> 0 :|: z - 1 >= 0, z' >= 0, v0 >= 0, 0 = v0 plus(z, z') -{ 3 }-> z' - 1 :|: z = 1 + 0, z' >= 0, z' - 1 >= 0 plus(z, z') -{ 1 }-> 1 + x0 :|: z - 1 >= 0, z' >= 0, 0 = x0, x0 >= 0 plus(z, z') -{ 2 }-> 1 + z' :|: z = 1 + 0, z' >= 0 s(z) -{ 0 }-> 0 :|: z >= 0 s(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 s(z) -{ 0 }-> 1 + z :|: z >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), z') :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), 0) :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), z') :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), 0) :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), minus(0)), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), 0), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), s(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), p(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), s(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), p(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(0, z') :|: z = 1 + 0, z' >= 0 times(z, z') -{ 1 }-> plus(0, z') :|: z - 1 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(0, s(minus(z' - 1))) :|: z = 1 + 0, z' - 1 >= 0 times(z, z') -{ 2 }-> plus(0, s(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, p(minus(z' - 1))) :|: z' - 1 >= 0, z = 1 + 0 times(z, z') -{ 2 }-> plus(0, p(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, 0) :|: z = 1 + 0, z' = 0 times(z, z') -{ 2 }-> plus(0, 0) :|: z = 1 + 0, z' >= 0 times(z, z') -{ 2 }-> plus(0, 0) :|: z - 1 >= 0, z' = 0 times(z, z') -{ 1 }-> plus(0, 0) :|: z - 1 >= 0, z' >= 0 times(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 times(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_0}, {s}, {p}, {plus}, {minus}, {times}, {encArg}, {encode_p}, {encode_*}, {encode_minus}, {encode_+}, {encode_s} ---------------------------------------- (43) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: encode_0 after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (44) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 0 }-> times(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> s(times(encArg(x_18), encArg(x_22))) :|: z = 1 + (1 + x_18 + x_22), x_18 >= 0, x_22 >= 0 encArg(z) -{ 0 }-> s(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(plus(encArg(x_16), encArg(x_21))) :|: z = 1 + (1 + x_16 + x_21), x_16 >= 0, x_21 >= 0 encArg(z) -{ 0 }-> s(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> plus(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> p(times(encArg(x_13), encArg(x_2''))) :|: x_13 >= 0, x_2'' >= 0, z = 1 + (1 + x_13 + x_2'') encArg(z) -{ 0 }-> p(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(plus(encArg(x_11), encArg(x_2'))) :|: x_11 >= 0, x_2' >= 0, z = 1 + (1 + x_11 + x_2') encArg(z) -{ 0 }-> p(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(times(encArg(x_153), encArg(x_220))) :|: x_153 >= 0, z = 1 + (1 + x_153 + x_220), x_220 >= 0 encArg(z) -{ 0 }-> minus(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(plus(encArg(x_151), encArg(x_219))) :|: z = 1 + (1 + x_151 + x_219), x_219 >= 0, x_151 >= 0 encArg(z) -{ 0 }-> minus(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> minus(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 encArg(z) -{ 0 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 encode_*(z, z') -{ 0 }-> times(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_*(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> plus(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_0 -{ 0 }-> 0 :|: encode_minus(z) -{ 0 }-> minus(times(encArg(x_1148), encArg(x_258))) :|: x_258 >= 0, x_1148 >= 0, z = 1 + x_1148 + x_258 encode_minus(z) -{ 0 }-> minus(s(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(plus(encArg(x_1146), encArg(x_257))) :|: z = 1 + x_1146 + x_257, x_1146 >= 0, x_257 >= 0 encode_minus(z) -{ 0 }-> minus(p(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(0) :|: z = 0 encode_minus(z) -{ 0 }-> minus(0) :|: z >= 0 encode_minus(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> p(times(encArg(x_198), encArg(x_238))) :|: z = 1 + x_198 + x_238, x_198 >= 0, x_238 >= 0 encode_p(z) -{ 0 }-> p(s(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(plus(encArg(x_196), encArg(x_237))) :|: x_237 >= 0, x_196 >= 0, z = 1 + x_196 + x_237 encode_p(z) -{ 0 }-> p(p(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_p(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> s(times(encArg(x_1103), encArg(x_240))) :|: z = 1 + x_1103 + x_240, x_1103 >= 0, x_240 >= 0 encode_s(z) -{ 0 }-> s(s(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(plus(encArg(x_1101), encArg(x_239))) :|: x_1101 >= 0, x_239 >= 0, z = 1 + x_1101 + x_239 encode_s(z) -{ 0 }-> s(p(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 minus(z) -{ 2 }-> s(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> s(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 1 }-> 0 :|: z = 0 minus(z) -{ 0 }-> 0 :|: z >= 0 minus(z) -{ 2 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 minus(z) -{ 1 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 minus(z) -{ 2 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 minus(z) -{ 1 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 p(z) -{ 0 }-> 1 + z :|: z >= 0 plus(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 plus(z, z') -{ 2 }-> s(s(plus(z - 2, z'))) :|: z - 2 >= 0, z' >= 0 plus(z, z') -{ 2 }-> s(p(plus(z - 2, z'))) :|: z' >= 0, z - 2 >= 0 plus(z, z') -{ 2 }-> p(s(plus(z - 2, z'))) :|: z - 2 >= 0, z' >= 0 plus(z, z') -{ 2 }-> p(p(plus(z - 2, z'))) :|: z' >= 0, z - 2 >= 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 2 }-> 0 :|: z = 1 + 0, z' >= 0 plus(z, z') -{ 1 }-> 0 :|: z - 1 >= 0, z' >= 0, v0 >= 0, 0 = v0 plus(z, z') -{ 3 }-> z' - 1 :|: z = 1 + 0, z' >= 0, z' - 1 >= 0 plus(z, z') -{ 1 }-> 1 + x0 :|: z - 1 >= 0, z' >= 0, 0 = x0, x0 >= 0 plus(z, z') -{ 2 }-> 1 + z' :|: z = 1 + 0, z' >= 0 s(z) -{ 0 }-> 0 :|: z >= 0 s(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 s(z) -{ 0 }-> 1 + z :|: z >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), z') :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), 0) :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), z') :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), 0) :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), minus(0)), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), 0), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), s(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), p(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), s(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), p(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(0, z') :|: z = 1 + 0, z' >= 0 times(z, z') -{ 1 }-> plus(0, z') :|: z - 1 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(0, s(minus(z' - 1))) :|: z = 1 + 0, z' - 1 >= 0 times(z, z') -{ 2 }-> plus(0, s(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, p(minus(z' - 1))) :|: z' - 1 >= 0, z = 1 + 0 times(z, z') -{ 2 }-> plus(0, p(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, 0) :|: z = 1 + 0, z' = 0 times(z, z') -{ 2 }-> plus(0, 0) :|: z = 1 + 0, z' >= 0 times(z, z') -{ 2 }-> plus(0, 0) :|: z - 1 >= 0, z' = 0 times(z, z') -{ 1 }-> plus(0, 0) :|: z - 1 >= 0, z' >= 0 times(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 times(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encode_0}, {s}, {p}, {plus}, {minus}, {times}, {encArg}, {encode_p}, {encode_*}, {encode_minus}, {encode_+}, {encode_s} Previous analysis results are: encode_0: runtime: ?, size: O(1) [0] ---------------------------------------- (45) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: encode_0 after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 0 ---------------------------------------- (46) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 0 }-> times(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> s(times(encArg(x_18), encArg(x_22))) :|: z = 1 + (1 + x_18 + x_22), x_18 >= 0, x_22 >= 0 encArg(z) -{ 0 }-> s(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(plus(encArg(x_16), encArg(x_21))) :|: z = 1 + (1 + x_16 + x_21), x_16 >= 0, x_21 >= 0 encArg(z) -{ 0 }-> s(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> plus(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> p(times(encArg(x_13), encArg(x_2''))) :|: x_13 >= 0, x_2'' >= 0, z = 1 + (1 + x_13 + x_2'') encArg(z) -{ 0 }-> p(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(plus(encArg(x_11), encArg(x_2'))) :|: x_11 >= 0, x_2' >= 0, z = 1 + (1 + x_11 + x_2') encArg(z) -{ 0 }-> p(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(times(encArg(x_153), encArg(x_220))) :|: x_153 >= 0, z = 1 + (1 + x_153 + x_220), x_220 >= 0 encArg(z) -{ 0 }-> minus(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(plus(encArg(x_151), encArg(x_219))) :|: z = 1 + (1 + x_151 + x_219), x_219 >= 0, x_151 >= 0 encArg(z) -{ 0 }-> minus(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> minus(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 encArg(z) -{ 0 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 encode_*(z, z') -{ 0 }-> times(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_*(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> plus(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_0 -{ 0 }-> 0 :|: encode_minus(z) -{ 0 }-> minus(times(encArg(x_1148), encArg(x_258))) :|: x_258 >= 0, x_1148 >= 0, z = 1 + x_1148 + x_258 encode_minus(z) -{ 0 }-> minus(s(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(plus(encArg(x_1146), encArg(x_257))) :|: z = 1 + x_1146 + x_257, x_1146 >= 0, x_257 >= 0 encode_minus(z) -{ 0 }-> minus(p(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(0) :|: z = 0 encode_minus(z) -{ 0 }-> minus(0) :|: z >= 0 encode_minus(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> p(times(encArg(x_198), encArg(x_238))) :|: z = 1 + x_198 + x_238, x_198 >= 0, x_238 >= 0 encode_p(z) -{ 0 }-> p(s(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(plus(encArg(x_196), encArg(x_237))) :|: x_237 >= 0, x_196 >= 0, z = 1 + x_196 + x_237 encode_p(z) -{ 0 }-> p(p(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_p(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> s(times(encArg(x_1103), encArg(x_240))) :|: z = 1 + x_1103 + x_240, x_1103 >= 0, x_240 >= 0 encode_s(z) -{ 0 }-> s(s(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(plus(encArg(x_1101), encArg(x_239))) :|: x_1101 >= 0, x_239 >= 0, z = 1 + x_1101 + x_239 encode_s(z) -{ 0 }-> s(p(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 minus(z) -{ 2 }-> s(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> s(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 1 }-> 0 :|: z = 0 minus(z) -{ 0 }-> 0 :|: z >= 0 minus(z) -{ 2 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 minus(z) -{ 1 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 minus(z) -{ 2 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 minus(z) -{ 1 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 p(z) -{ 0 }-> 1 + z :|: z >= 0 plus(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 plus(z, z') -{ 2 }-> s(s(plus(z - 2, z'))) :|: z - 2 >= 0, z' >= 0 plus(z, z') -{ 2 }-> s(p(plus(z - 2, z'))) :|: z' >= 0, z - 2 >= 0 plus(z, z') -{ 2 }-> p(s(plus(z - 2, z'))) :|: z - 2 >= 0, z' >= 0 plus(z, z') -{ 2 }-> p(p(plus(z - 2, z'))) :|: z' >= 0, z - 2 >= 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 2 }-> 0 :|: z = 1 + 0, z' >= 0 plus(z, z') -{ 1 }-> 0 :|: z - 1 >= 0, z' >= 0, v0 >= 0, 0 = v0 plus(z, z') -{ 3 }-> z' - 1 :|: z = 1 + 0, z' >= 0, z' - 1 >= 0 plus(z, z') -{ 1 }-> 1 + x0 :|: z - 1 >= 0, z' >= 0, 0 = x0, x0 >= 0 plus(z, z') -{ 2 }-> 1 + z' :|: z = 1 + 0, z' >= 0 s(z) -{ 0 }-> 0 :|: z >= 0 s(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 s(z) -{ 0 }-> 1 + z :|: z >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), z') :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), 0) :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), z') :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), 0) :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), minus(0)), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), 0), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), s(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), p(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), s(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), p(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(0, z') :|: z = 1 + 0, z' >= 0 times(z, z') -{ 1 }-> plus(0, z') :|: z - 1 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(0, s(minus(z' - 1))) :|: z = 1 + 0, z' - 1 >= 0 times(z, z') -{ 2 }-> plus(0, s(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, p(minus(z' - 1))) :|: z' - 1 >= 0, z = 1 + 0 times(z, z') -{ 2 }-> plus(0, p(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, 0) :|: z = 1 + 0, z' = 0 times(z, z') -{ 2 }-> plus(0, 0) :|: z = 1 + 0, z' >= 0 times(z, z') -{ 2 }-> plus(0, 0) :|: z - 1 >= 0, z' = 0 times(z, z') -{ 1 }-> plus(0, 0) :|: z - 1 >= 0, z' >= 0 times(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 times(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {s}, {p}, {plus}, {minus}, {times}, {encArg}, {encode_p}, {encode_*}, {encode_minus}, {encode_+}, {encode_s} Previous analysis results are: encode_0: runtime: O(1) [0], size: O(1) [0] ---------------------------------------- (47) ResultPropagationProof (UPPER BOUND(ID)) Applied inner abstraction using the recently inferred runtime/size bounds where possible. ---------------------------------------- (48) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 0 }-> times(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> s(times(encArg(x_18), encArg(x_22))) :|: z = 1 + (1 + x_18 + x_22), x_18 >= 0, x_22 >= 0 encArg(z) -{ 0 }-> s(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(plus(encArg(x_16), encArg(x_21))) :|: z = 1 + (1 + x_16 + x_21), x_16 >= 0, x_21 >= 0 encArg(z) -{ 0 }-> s(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> plus(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> p(times(encArg(x_13), encArg(x_2''))) :|: x_13 >= 0, x_2'' >= 0, z = 1 + (1 + x_13 + x_2'') encArg(z) -{ 0 }-> p(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(plus(encArg(x_11), encArg(x_2'))) :|: x_11 >= 0, x_2' >= 0, z = 1 + (1 + x_11 + x_2') encArg(z) -{ 0 }-> p(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(times(encArg(x_153), encArg(x_220))) :|: x_153 >= 0, z = 1 + (1 + x_153 + x_220), x_220 >= 0 encArg(z) -{ 0 }-> minus(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(plus(encArg(x_151), encArg(x_219))) :|: z = 1 + (1 + x_151 + x_219), x_219 >= 0, x_151 >= 0 encArg(z) -{ 0 }-> minus(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> minus(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 encArg(z) -{ 0 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 encode_*(z, z') -{ 0 }-> times(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_*(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> plus(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_0 -{ 0 }-> 0 :|: encode_minus(z) -{ 0 }-> minus(times(encArg(x_1148), encArg(x_258))) :|: x_258 >= 0, x_1148 >= 0, z = 1 + x_1148 + x_258 encode_minus(z) -{ 0 }-> minus(s(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(plus(encArg(x_1146), encArg(x_257))) :|: z = 1 + x_1146 + x_257, x_1146 >= 0, x_257 >= 0 encode_minus(z) -{ 0 }-> minus(p(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(0) :|: z = 0 encode_minus(z) -{ 0 }-> minus(0) :|: z >= 0 encode_minus(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> p(times(encArg(x_198), encArg(x_238))) :|: z = 1 + x_198 + x_238, x_198 >= 0, x_238 >= 0 encode_p(z) -{ 0 }-> p(s(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(plus(encArg(x_196), encArg(x_237))) :|: x_237 >= 0, x_196 >= 0, z = 1 + x_196 + x_237 encode_p(z) -{ 0 }-> p(p(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_p(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> s(times(encArg(x_1103), encArg(x_240))) :|: z = 1 + x_1103 + x_240, x_1103 >= 0, x_240 >= 0 encode_s(z) -{ 0 }-> s(s(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(plus(encArg(x_1101), encArg(x_239))) :|: x_1101 >= 0, x_239 >= 0, z = 1 + x_1101 + x_239 encode_s(z) -{ 0 }-> s(p(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 minus(z) -{ 2 }-> s(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> s(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 1 }-> 0 :|: z = 0 minus(z) -{ 0 }-> 0 :|: z >= 0 minus(z) -{ 2 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 minus(z) -{ 1 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 minus(z) -{ 2 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 minus(z) -{ 1 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 p(z) -{ 0 }-> 1 + z :|: z >= 0 plus(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 plus(z, z') -{ 2 }-> s(s(plus(z - 2, z'))) :|: z - 2 >= 0, z' >= 0 plus(z, z') -{ 2 }-> s(p(plus(z - 2, z'))) :|: z' >= 0, z - 2 >= 0 plus(z, z') -{ 2 }-> p(s(plus(z - 2, z'))) :|: z - 2 >= 0, z' >= 0 plus(z, z') -{ 2 }-> p(p(plus(z - 2, z'))) :|: z' >= 0, z - 2 >= 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 2 }-> 0 :|: z = 1 + 0, z' >= 0 plus(z, z') -{ 1 }-> 0 :|: z - 1 >= 0, z' >= 0, v0 >= 0, 0 = v0 plus(z, z') -{ 3 }-> z' - 1 :|: z = 1 + 0, z' >= 0, z' - 1 >= 0 plus(z, z') -{ 1 }-> 1 + x0 :|: z - 1 >= 0, z' >= 0, 0 = x0, x0 >= 0 plus(z, z') -{ 2 }-> 1 + z' :|: z = 1 + 0, z' >= 0 s(z) -{ 0 }-> 0 :|: z >= 0 s(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 s(z) -{ 0 }-> 1 + z :|: z >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), z') :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), 0) :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), z') :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), 0) :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), minus(0)), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), 0), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), s(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), p(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), s(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), p(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(0, z') :|: z = 1 + 0, z' >= 0 times(z, z') -{ 1 }-> plus(0, z') :|: z - 1 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(0, s(minus(z' - 1))) :|: z = 1 + 0, z' - 1 >= 0 times(z, z') -{ 2 }-> plus(0, s(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, p(minus(z' - 1))) :|: z' - 1 >= 0, z = 1 + 0 times(z, z') -{ 2 }-> plus(0, p(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, 0) :|: z = 1 + 0, z' = 0 times(z, z') -{ 2 }-> plus(0, 0) :|: z = 1 + 0, z' >= 0 times(z, z') -{ 2 }-> plus(0, 0) :|: z - 1 >= 0, z' = 0 times(z, z') -{ 1 }-> plus(0, 0) :|: z - 1 >= 0, z' >= 0 times(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 times(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {s}, {p}, {plus}, {minus}, {times}, {encArg}, {encode_p}, {encode_*}, {encode_minus}, {encode_+}, {encode_s} Previous analysis results are: encode_0: runtime: O(1) [0], size: O(1) [0] ---------------------------------------- (49) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: s after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 1 + z ---------------------------------------- (50) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 0 }-> times(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> s(times(encArg(x_18), encArg(x_22))) :|: z = 1 + (1 + x_18 + x_22), x_18 >= 0, x_22 >= 0 encArg(z) -{ 0 }-> s(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(plus(encArg(x_16), encArg(x_21))) :|: z = 1 + (1 + x_16 + x_21), x_16 >= 0, x_21 >= 0 encArg(z) -{ 0 }-> s(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> plus(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> p(times(encArg(x_13), encArg(x_2''))) :|: x_13 >= 0, x_2'' >= 0, z = 1 + (1 + x_13 + x_2'') encArg(z) -{ 0 }-> p(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(plus(encArg(x_11), encArg(x_2'))) :|: x_11 >= 0, x_2' >= 0, z = 1 + (1 + x_11 + x_2') encArg(z) -{ 0 }-> p(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(times(encArg(x_153), encArg(x_220))) :|: x_153 >= 0, z = 1 + (1 + x_153 + x_220), x_220 >= 0 encArg(z) -{ 0 }-> minus(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(plus(encArg(x_151), encArg(x_219))) :|: z = 1 + (1 + x_151 + x_219), x_219 >= 0, x_151 >= 0 encArg(z) -{ 0 }-> minus(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> minus(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 encArg(z) -{ 0 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 encode_*(z, z') -{ 0 }-> times(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_*(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> plus(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_0 -{ 0 }-> 0 :|: encode_minus(z) -{ 0 }-> minus(times(encArg(x_1148), encArg(x_258))) :|: x_258 >= 0, x_1148 >= 0, z = 1 + x_1148 + x_258 encode_minus(z) -{ 0 }-> minus(s(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(plus(encArg(x_1146), encArg(x_257))) :|: z = 1 + x_1146 + x_257, x_1146 >= 0, x_257 >= 0 encode_minus(z) -{ 0 }-> minus(p(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(0) :|: z = 0 encode_minus(z) -{ 0 }-> minus(0) :|: z >= 0 encode_minus(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> p(times(encArg(x_198), encArg(x_238))) :|: z = 1 + x_198 + x_238, x_198 >= 0, x_238 >= 0 encode_p(z) -{ 0 }-> p(s(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(plus(encArg(x_196), encArg(x_237))) :|: x_237 >= 0, x_196 >= 0, z = 1 + x_196 + x_237 encode_p(z) -{ 0 }-> p(p(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_p(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> s(times(encArg(x_1103), encArg(x_240))) :|: z = 1 + x_1103 + x_240, x_1103 >= 0, x_240 >= 0 encode_s(z) -{ 0 }-> s(s(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(plus(encArg(x_1101), encArg(x_239))) :|: x_1101 >= 0, x_239 >= 0, z = 1 + x_1101 + x_239 encode_s(z) -{ 0 }-> s(p(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 minus(z) -{ 2 }-> s(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> s(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 1 }-> 0 :|: z = 0 minus(z) -{ 0 }-> 0 :|: z >= 0 minus(z) -{ 2 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 minus(z) -{ 1 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 minus(z) -{ 2 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 minus(z) -{ 1 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 p(z) -{ 0 }-> 1 + z :|: z >= 0 plus(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 plus(z, z') -{ 2 }-> s(s(plus(z - 2, z'))) :|: z - 2 >= 0, z' >= 0 plus(z, z') -{ 2 }-> s(p(plus(z - 2, z'))) :|: z' >= 0, z - 2 >= 0 plus(z, z') -{ 2 }-> p(s(plus(z - 2, z'))) :|: z - 2 >= 0, z' >= 0 plus(z, z') -{ 2 }-> p(p(plus(z - 2, z'))) :|: z' >= 0, z - 2 >= 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 2 }-> 0 :|: z = 1 + 0, z' >= 0 plus(z, z') -{ 1 }-> 0 :|: z - 1 >= 0, z' >= 0, v0 >= 0, 0 = v0 plus(z, z') -{ 3 }-> z' - 1 :|: z = 1 + 0, z' >= 0, z' - 1 >= 0 plus(z, z') -{ 1 }-> 1 + x0 :|: z - 1 >= 0, z' >= 0, 0 = x0, x0 >= 0 plus(z, z') -{ 2 }-> 1 + z' :|: z = 1 + 0, z' >= 0 s(z) -{ 0 }-> 0 :|: z >= 0 s(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 s(z) -{ 0 }-> 1 + z :|: z >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), z') :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), 0) :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), z') :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), 0) :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), minus(0)), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), 0), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), s(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), p(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), s(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), p(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(0, z') :|: z = 1 + 0, z' >= 0 times(z, z') -{ 1 }-> plus(0, z') :|: z - 1 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(0, s(minus(z' - 1))) :|: z = 1 + 0, z' - 1 >= 0 times(z, z') -{ 2 }-> plus(0, s(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, p(minus(z' - 1))) :|: z' - 1 >= 0, z = 1 + 0 times(z, z') -{ 2 }-> plus(0, p(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, 0) :|: z = 1 + 0, z' = 0 times(z, z') -{ 2 }-> plus(0, 0) :|: z = 1 + 0, z' >= 0 times(z, z') -{ 2 }-> plus(0, 0) :|: z - 1 >= 0, z' = 0 times(z, z') -{ 1 }-> plus(0, 0) :|: z - 1 >= 0, z' >= 0 times(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 times(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {s}, {p}, {plus}, {minus}, {times}, {encArg}, {encode_p}, {encode_*}, {encode_minus}, {encode_+}, {encode_s} Previous analysis results are: encode_0: runtime: O(1) [0], size: O(1) [0] s: runtime: ?, size: O(n^1) [1 + z] ---------------------------------------- (51) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: s after applying outer abstraction to obtain an ITS, resulting in: O(1) with polynomial bound: 1 ---------------------------------------- (52) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 0 }-> times(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> s(times(encArg(x_18), encArg(x_22))) :|: z = 1 + (1 + x_18 + x_22), x_18 >= 0, x_22 >= 0 encArg(z) -{ 0 }-> s(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(plus(encArg(x_16), encArg(x_21))) :|: z = 1 + (1 + x_16 + x_21), x_16 >= 0, x_21 >= 0 encArg(z) -{ 0 }-> s(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> plus(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> p(times(encArg(x_13), encArg(x_2''))) :|: x_13 >= 0, x_2'' >= 0, z = 1 + (1 + x_13 + x_2'') encArg(z) -{ 0 }-> p(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(plus(encArg(x_11), encArg(x_2'))) :|: x_11 >= 0, x_2' >= 0, z = 1 + (1 + x_11 + x_2') encArg(z) -{ 0 }-> p(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(times(encArg(x_153), encArg(x_220))) :|: x_153 >= 0, z = 1 + (1 + x_153 + x_220), x_220 >= 0 encArg(z) -{ 0 }-> minus(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(plus(encArg(x_151), encArg(x_219))) :|: z = 1 + (1 + x_151 + x_219), x_219 >= 0, x_151 >= 0 encArg(z) -{ 0 }-> minus(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> minus(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 encArg(z) -{ 0 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 encode_*(z, z') -{ 0 }-> times(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_*(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> plus(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_0 -{ 0 }-> 0 :|: encode_minus(z) -{ 0 }-> minus(times(encArg(x_1148), encArg(x_258))) :|: x_258 >= 0, x_1148 >= 0, z = 1 + x_1148 + x_258 encode_minus(z) -{ 0 }-> minus(s(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(plus(encArg(x_1146), encArg(x_257))) :|: z = 1 + x_1146 + x_257, x_1146 >= 0, x_257 >= 0 encode_minus(z) -{ 0 }-> minus(p(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(0) :|: z = 0 encode_minus(z) -{ 0 }-> minus(0) :|: z >= 0 encode_minus(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> p(times(encArg(x_198), encArg(x_238))) :|: z = 1 + x_198 + x_238, x_198 >= 0, x_238 >= 0 encode_p(z) -{ 0 }-> p(s(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(plus(encArg(x_196), encArg(x_237))) :|: x_237 >= 0, x_196 >= 0, z = 1 + x_196 + x_237 encode_p(z) -{ 0 }-> p(p(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_p(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> s(times(encArg(x_1103), encArg(x_240))) :|: z = 1 + x_1103 + x_240, x_1103 >= 0, x_240 >= 0 encode_s(z) -{ 0 }-> s(s(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(plus(encArg(x_1101), encArg(x_239))) :|: x_1101 >= 0, x_239 >= 0, z = 1 + x_1101 + x_239 encode_s(z) -{ 0 }-> s(p(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 minus(z) -{ 2 }-> s(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> s(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 1 }-> 0 :|: z = 0 minus(z) -{ 0 }-> 0 :|: z >= 0 minus(z) -{ 2 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 minus(z) -{ 1 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 minus(z) -{ 2 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 minus(z) -{ 1 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 p(z) -{ 0 }-> 1 + z :|: z >= 0 plus(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 plus(z, z') -{ 2 }-> s(s(plus(z - 2, z'))) :|: z - 2 >= 0, z' >= 0 plus(z, z') -{ 2 }-> s(p(plus(z - 2, z'))) :|: z' >= 0, z - 2 >= 0 plus(z, z') -{ 2 }-> p(s(plus(z - 2, z'))) :|: z - 2 >= 0, z' >= 0 plus(z, z') -{ 2 }-> p(p(plus(z - 2, z'))) :|: z' >= 0, z - 2 >= 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 2 }-> 0 :|: z = 1 + 0, z' >= 0 plus(z, z') -{ 1 }-> 0 :|: z - 1 >= 0, z' >= 0, v0 >= 0, 0 = v0 plus(z, z') -{ 3 }-> z' - 1 :|: z = 1 + 0, z' >= 0, z' - 1 >= 0 plus(z, z') -{ 1 }-> 1 + x0 :|: z - 1 >= 0, z' >= 0, 0 = x0, x0 >= 0 plus(z, z') -{ 2 }-> 1 + z' :|: z = 1 + 0, z' >= 0 s(z) -{ 0 }-> 0 :|: z >= 0 s(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 s(z) -{ 0 }-> 1 + z :|: z >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), z') :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), 0) :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), z') :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), 0) :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), minus(0)), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), 0), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), s(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), p(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), s(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), p(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(0, z') :|: z = 1 + 0, z' >= 0 times(z, z') -{ 1 }-> plus(0, z') :|: z - 1 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(0, s(minus(z' - 1))) :|: z = 1 + 0, z' - 1 >= 0 times(z, z') -{ 2 }-> plus(0, s(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, p(minus(z' - 1))) :|: z' - 1 >= 0, z = 1 + 0 times(z, z') -{ 2 }-> plus(0, p(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, 0) :|: z = 1 + 0, z' = 0 times(z, z') -{ 2 }-> plus(0, 0) :|: z = 1 + 0, z' >= 0 times(z, z') -{ 2 }-> plus(0, 0) :|: z - 1 >= 0, z' = 0 times(z, z') -{ 1 }-> plus(0, 0) :|: z - 1 >= 0, z' >= 0 times(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 times(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {p}, {plus}, {minus}, {times}, {encArg}, {encode_p}, {encode_*}, {encode_minus}, {encode_+}, {encode_s} Previous analysis results are: encode_0: runtime: O(1) [0], size: O(1) [0] s: runtime: O(1) [1], size: O(n^1) [1 + z] ---------------------------------------- (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: encArg(z) -{ 0 }-> times(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> s(times(encArg(x_18), encArg(x_22))) :|: z = 1 + (1 + x_18 + x_22), x_18 >= 0, x_22 >= 0 encArg(z) -{ 0 }-> s(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(plus(encArg(x_16), encArg(x_21))) :|: z = 1 + (1 + x_16 + x_21), x_16 >= 0, x_21 >= 0 encArg(z) -{ 0 }-> s(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> plus(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> p(times(encArg(x_13), encArg(x_2''))) :|: x_13 >= 0, x_2'' >= 0, z = 1 + (1 + x_13 + x_2'') encArg(z) -{ 0 }-> p(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(plus(encArg(x_11), encArg(x_2'))) :|: x_11 >= 0, x_2' >= 0, z = 1 + (1 + x_11 + x_2') encArg(z) -{ 0 }-> p(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(times(encArg(x_153), encArg(x_220))) :|: x_153 >= 0, z = 1 + (1 + x_153 + x_220), x_220 >= 0 encArg(z) -{ 0 }-> minus(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(plus(encArg(x_151), encArg(x_219))) :|: z = 1 + (1 + x_151 + x_219), x_219 >= 0, x_151 >= 0 encArg(z) -{ 0 }-> minus(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> minus(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 encArg(z) -{ 0 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 encode_*(z, z') -{ 0 }-> times(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_*(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> plus(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_0 -{ 0 }-> 0 :|: encode_minus(z) -{ 0 }-> minus(times(encArg(x_1148), encArg(x_258))) :|: x_258 >= 0, x_1148 >= 0, z = 1 + x_1148 + x_258 encode_minus(z) -{ 0 }-> minus(s(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(plus(encArg(x_1146), encArg(x_257))) :|: z = 1 + x_1146 + x_257, x_1146 >= 0, x_257 >= 0 encode_minus(z) -{ 0 }-> minus(p(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(0) :|: z = 0 encode_minus(z) -{ 0 }-> minus(0) :|: z >= 0 encode_minus(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> p(times(encArg(x_198), encArg(x_238))) :|: z = 1 + x_198 + x_238, x_198 >= 0, x_238 >= 0 encode_p(z) -{ 0 }-> p(s(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(plus(encArg(x_196), encArg(x_237))) :|: x_237 >= 0, x_196 >= 0, z = 1 + x_196 + x_237 encode_p(z) -{ 0 }-> p(p(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_p(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> s(times(encArg(x_1103), encArg(x_240))) :|: z = 1 + x_1103 + x_240, x_1103 >= 0, x_240 >= 0 encode_s(z) -{ 0 }-> s(s(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(plus(encArg(x_1101), encArg(x_239))) :|: x_1101 >= 0, x_239 >= 0, z = 1 + x_1101 + x_239 encode_s(z) -{ 0 }-> s(p(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 minus(z) -{ 2 }-> s(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> s(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 1 }-> 0 :|: z = 0 minus(z) -{ 0 }-> 0 :|: z >= 0 minus(z) -{ 2 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 minus(z) -{ 1 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 minus(z) -{ 2 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 minus(z) -{ 1 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 p(z) -{ 0 }-> 1 + z :|: z >= 0 plus(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 plus(z, z') -{ 2 }-> s(s(plus(z - 2, z'))) :|: z - 2 >= 0, z' >= 0 plus(z, z') -{ 2 }-> s(p(plus(z - 2, z'))) :|: z' >= 0, z - 2 >= 0 plus(z, z') -{ 2 }-> p(s(plus(z - 2, z'))) :|: z - 2 >= 0, z' >= 0 plus(z, z') -{ 2 }-> p(p(plus(z - 2, z'))) :|: z' >= 0, z - 2 >= 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 2 }-> 0 :|: z = 1 + 0, z' >= 0 plus(z, z') -{ 1 }-> 0 :|: z - 1 >= 0, z' >= 0, v0 >= 0, 0 = v0 plus(z, z') -{ 3 }-> z' - 1 :|: z = 1 + 0, z' >= 0, z' - 1 >= 0 plus(z, z') -{ 1 }-> 1 + x0 :|: z - 1 >= 0, z' >= 0, 0 = x0, x0 >= 0 plus(z, z') -{ 2 }-> 1 + z' :|: z = 1 + 0, z' >= 0 s(z) -{ 0 }-> 0 :|: z >= 0 s(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 s(z) -{ 0 }-> 1 + z :|: z >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), z') :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), 0) :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), z') :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), 0) :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), minus(0)), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), 0), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), s(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), p(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), s(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), p(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(0, z') :|: z = 1 + 0, z' >= 0 times(z, z') -{ 1 }-> plus(0, z') :|: z - 1 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(0, s(minus(z' - 1))) :|: z = 1 + 0, z' - 1 >= 0 times(z, z') -{ 2 }-> plus(0, s(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, p(minus(z' - 1))) :|: z' - 1 >= 0, z = 1 + 0 times(z, z') -{ 2 }-> plus(0, p(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, 0) :|: z = 1 + 0, z' = 0 times(z, z') -{ 2 }-> plus(0, 0) :|: z = 1 + 0, z' >= 0 times(z, z') -{ 2 }-> plus(0, 0) :|: z - 1 >= 0, z' = 0 times(z, z') -{ 1 }-> plus(0, 0) :|: z - 1 >= 0, z' >= 0 times(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 times(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {p}, {plus}, {minus}, {times}, {encArg}, {encode_p}, {encode_*}, {encode_minus}, {encode_+}, {encode_s} Previous analysis results are: encode_0: runtime: O(1) [0], size: O(1) [0] s: runtime: O(1) [1], size: O(n^1) [1 + z] ---------------------------------------- (55) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: p after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 1 + z ---------------------------------------- (56) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 0 }-> times(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> s(times(encArg(x_18), encArg(x_22))) :|: z = 1 + (1 + x_18 + x_22), x_18 >= 0, x_22 >= 0 encArg(z) -{ 0 }-> s(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(plus(encArg(x_16), encArg(x_21))) :|: z = 1 + (1 + x_16 + x_21), x_16 >= 0, x_21 >= 0 encArg(z) -{ 0 }-> s(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> plus(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> p(times(encArg(x_13), encArg(x_2''))) :|: x_13 >= 0, x_2'' >= 0, z = 1 + (1 + x_13 + x_2'') encArg(z) -{ 0 }-> p(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(plus(encArg(x_11), encArg(x_2'))) :|: x_11 >= 0, x_2' >= 0, z = 1 + (1 + x_11 + x_2') encArg(z) -{ 0 }-> p(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(times(encArg(x_153), encArg(x_220))) :|: x_153 >= 0, z = 1 + (1 + x_153 + x_220), x_220 >= 0 encArg(z) -{ 0 }-> minus(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(plus(encArg(x_151), encArg(x_219))) :|: z = 1 + (1 + x_151 + x_219), x_219 >= 0, x_151 >= 0 encArg(z) -{ 0 }-> minus(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> minus(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 encArg(z) -{ 0 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 encode_*(z, z') -{ 0 }-> times(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_*(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> plus(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_0 -{ 0 }-> 0 :|: encode_minus(z) -{ 0 }-> minus(times(encArg(x_1148), encArg(x_258))) :|: x_258 >= 0, x_1148 >= 0, z = 1 + x_1148 + x_258 encode_minus(z) -{ 0 }-> minus(s(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(plus(encArg(x_1146), encArg(x_257))) :|: z = 1 + x_1146 + x_257, x_1146 >= 0, x_257 >= 0 encode_minus(z) -{ 0 }-> minus(p(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(0) :|: z = 0 encode_minus(z) -{ 0 }-> minus(0) :|: z >= 0 encode_minus(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> p(times(encArg(x_198), encArg(x_238))) :|: z = 1 + x_198 + x_238, x_198 >= 0, x_238 >= 0 encode_p(z) -{ 0 }-> p(s(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(plus(encArg(x_196), encArg(x_237))) :|: x_237 >= 0, x_196 >= 0, z = 1 + x_196 + x_237 encode_p(z) -{ 0 }-> p(p(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_p(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> s(times(encArg(x_1103), encArg(x_240))) :|: z = 1 + x_1103 + x_240, x_1103 >= 0, x_240 >= 0 encode_s(z) -{ 0 }-> s(s(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(plus(encArg(x_1101), encArg(x_239))) :|: x_1101 >= 0, x_239 >= 0, z = 1 + x_1101 + x_239 encode_s(z) -{ 0 }-> s(p(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 minus(z) -{ 2 }-> s(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> s(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 1 }-> 0 :|: z = 0 minus(z) -{ 0 }-> 0 :|: z >= 0 minus(z) -{ 2 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 minus(z) -{ 1 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 minus(z) -{ 2 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 minus(z) -{ 1 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 p(z) -{ 0 }-> 1 + z :|: z >= 0 plus(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 plus(z, z') -{ 2 }-> s(s(plus(z - 2, z'))) :|: z - 2 >= 0, z' >= 0 plus(z, z') -{ 2 }-> s(p(plus(z - 2, z'))) :|: z' >= 0, z - 2 >= 0 plus(z, z') -{ 2 }-> p(s(plus(z - 2, z'))) :|: z - 2 >= 0, z' >= 0 plus(z, z') -{ 2 }-> p(p(plus(z - 2, z'))) :|: z' >= 0, z - 2 >= 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 2 }-> 0 :|: z = 1 + 0, z' >= 0 plus(z, z') -{ 1 }-> 0 :|: z - 1 >= 0, z' >= 0, v0 >= 0, 0 = v0 plus(z, z') -{ 3 }-> z' - 1 :|: z = 1 + 0, z' >= 0, z' - 1 >= 0 plus(z, z') -{ 1 }-> 1 + x0 :|: z - 1 >= 0, z' >= 0, 0 = x0, x0 >= 0 plus(z, z') -{ 2 }-> 1 + z' :|: z = 1 + 0, z' >= 0 s(z) -{ 0 }-> 0 :|: z >= 0 s(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 s(z) -{ 0 }-> 1 + z :|: z >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), z') :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), 0) :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), z') :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), 0) :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), minus(0)), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), 0), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), s(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), p(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), s(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), p(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(0, z') :|: z = 1 + 0, z' >= 0 times(z, z') -{ 1 }-> plus(0, z') :|: z - 1 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(0, s(minus(z' - 1))) :|: z = 1 + 0, z' - 1 >= 0 times(z, z') -{ 2 }-> plus(0, s(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, p(minus(z' - 1))) :|: z' - 1 >= 0, z = 1 + 0 times(z, z') -{ 2 }-> plus(0, p(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, 0) :|: z = 1 + 0, z' = 0 times(z, z') -{ 2 }-> plus(0, 0) :|: z = 1 + 0, z' >= 0 times(z, z') -{ 2 }-> plus(0, 0) :|: z - 1 >= 0, z' = 0 times(z, z') -{ 1 }-> plus(0, 0) :|: z - 1 >= 0, z' >= 0 times(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 times(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {p}, {plus}, {minus}, {times}, {encArg}, {encode_p}, {encode_*}, {encode_minus}, {encode_+}, {encode_s} Previous analysis results are: encode_0: runtime: O(1) [0], size: O(1) [0] s: runtime: O(1) [1], size: O(n^1) [1 + z] p: runtime: ?, size: O(n^1) [1 + z] ---------------------------------------- (57) 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 ---------------------------------------- (58) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 0 }-> times(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> s(times(encArg(x_18), encArg(x_22))) :|: z = 1 + (1 + x_18 + x_22), x_18 >= 0, x_22 >= 0 encArg(z) -{ 0 }-> s(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(plus(encArg(x_16), encArg(x_21))) :|: z = 1 + (1 + x_16 + x_21), x_16 >= 0, x_21 >= 0 encArg(z) -{ 0 }-> s(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> plus(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> p(times(encArg(x_13), encArg(x_2''))) :|: x_13 >= 0, x_2'' >= 0, z = 1 + (1 + x_13 + x_2'') encArg(z) -{ 0 }-> p(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(plus(encArg(x_11), encArg(x_2'))) :|: x_11 >= 0, x_2' >= 0, z = 1 + (1 + x_11 + x_2') encArg(z) -{ 0 }-> p(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(times(encArg(x_153), encArg(x_220))) :|: x_153 >= 0, z = 1 + (1 + x_153 + x_220), x_220 >= 0 encArg(z) -{ 0 }-> minus(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(plus(encArg(x_151), encArg(x_219))) :|: z = 1 + (1 + x_151 + x_219), x_219 >= 0, x_151 >= 0 encArg(z) -{ 0 }-> minus(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> minus(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 encArg(z) -{ 0 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 encode_*(z, z') -{ 0 }-> times(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_*(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> plus(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_0 -{ 0 }-> 0 :|: encode_minus(z) -{ 0 }-> minus(times(encArg(x_1148), encArg(x_258))) :|: x_258 >= 0, x_1148 >= 0, z = 1 + x_1148 + x_258 encode_minus(z) -{ 0 }-> minus(s(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(plus(encArg(x_1146), encArg(x_257))) :|: z = 1 + x_1146 + x_257, x_1146 >= 0, x_257 >= 0 encode_minus(z) -{ 0 }-> minus(p(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(0) :|: z = 0 encode_minus(z) -{ 0 }-> minus(0) :|: z >= 0 encode_minus(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> p(times(encArg(x_198), encArg(x_238))) :|: z = 1 + x_198 + x_238, x_198 >= 0, x_238 >= 0 encode_p(z) -{ 0 }-> p(s(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(plus(encArg(x_196), encArg(x_237))) :|: x_237 >= 0, x_196 >= 0, z = 1 + x_196 + x_237 encode_p(z) -{ 0 }-> p(p(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_p(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> s(times(encArg(x_1103), encArg(x_240))) :|: z = 1 + x_1103 + x_240, x_1103 >= 0, x_240 >= 0 encode_s(z) -{ 0 }-> s(s(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(plus(encArg(x_1101), encArg(x_239))) :|: x_1101 >= 0, x_239 >= 0, z = 1 + x_1101 + x_239 encode_s(z) -{ 0 }-> s(p(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 minus(z) -{ 2 }-> s(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> s(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 1 }-> 0 :|: z = 0 minus(z) -{ 0 }-> 0 :|: z >= 0 minus(z) -{ 2 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 minus(z) -{ 1 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 minus(z) -{ 2 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 minus(z) -{ 1 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 p(z) -{ 0 }-> 1 + z :|: z >= 0 plus(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 plus(z, z') -{ 2 }-> s(s(plus(z - 2, z'))) :|: z - 2 >= 0, z' >= 0 plus(z, z') -{ 2 }-> s(p(plus(z - 2, z'))) :|: z' >= 0, z - 2 >= 0 plus(z, z') -{ 2 }-> p(s(plus(z - 2, z'))) :|: z - 2 >= 0, z' >= 0 plus(z, z') -{ 2 }-> p(p(plus(z - 2, z'))) :|: z' >= 0, z - 2 >= 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 2 }-> 0 :|: z = 1 + 0, z' >= 0 plus(z, z') -{ 1 }-> 0 :|: z - 1 >= 0, z' >= 0, v0 >= 0, 0 = v0 plus(z, z') -{ 3 }-> z' - 1 :|: z = 1 + 0, z' >= 0, z' - 1 >= 0 plus(z, z') -{ 1 }-> 1 + x0 :|: z - 1 >= 0, z' >= 0, 0 = x0, x0 >= 0 plus(z, z') -{ 2 }-> 1 + z' :|: z = 1 + 0, z' >= 0 s(z) -{ 0 }-> 0 :|: z >= 0 s(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 s(z) -{ 0 }-> 1 + z :|: z >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), z') :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), 0) :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), z') :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), 0) :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), minus(0)), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), 0), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), s(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), p(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), s(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), p(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(0, z') :|: z = 1 + 0, z' >= 0 times(z, z') -{ 1 }-> plus(0, z') :|: z - 1 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(0, s(minus(z' - 1))) :|: z = 1 + 0, z' - 1 >= 0 times(z, z') -{ 2 }-> plus(0, s(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, p(minus(z' - 1))) :|: z' - 1 >= 0, z = 1 + 0 times(z, z') -{ 2 }-> plus(0, p(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, 0) :|: z = 1 + 0, z' = 0 times(z, z') -{ 2 }-> plus(0, 0) :|: z = 1 + 0, z' >= 0 times(z, z') -{ 2 }-> plus(0, 0) :|: z - 1 >= 0, z' = 0 times(z, z') -{ 1 }-> plus(0, 0) :|: z - 1 >= 0, z' >= 0 times(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 times(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {plus}, {minus}, {times}, {encArg}, {encode_p}, {encode_*}, {encode_minus}, {encode_+}, {encode_s} Previous analysis results are: encode_0: runtime: O(1) [0], size: O(1) [0] s: runtime: O(1) [1], size: O(n^1) [1 + z] p: runtime: O(1) [1], size: O(n^1) [1 + 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: encArg(z) -{ 0 }-> times(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> s(times(encArg(x_18), encArg(x_22))) :|: z = 1 + (1 + x_18 + x_22), x_18 >= 0, x_22 >= 0 encArg(z) -{ 0 }-> s(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(plus(encArg(x_16), encArg(x_21))) :|: z = 1 + (1 + x_16 + x_21), x_16 >= 0, x_21 >= 0 encArg(z) -{ 0 }-> s(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> plus(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> p(times(encArg(x_13), encArg(x_2''))) :|: x_13 >= 0, x_2'' >= 0, z = 1 + (1 + x_13 + x_2'') encArg(z) -{ 0 }-> p(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(plus(encArg(x_11), encArg(x_2'))) :|: x_11 >= 0, x_2' >= 0, z = 1 + (1 + x_11 + x_2') encArg(z) -{ 0 }-> p(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(times(encArg(x_153), encArg(x_220))) :|: x_153 >= 0, z = 1 + (1 + x_153 + x_220), x_220 >= 0 encArg(z) -{ 0 }-> minus(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(plus(encArg(x_151), encArg(x_219))) :|: z = 1 + (1 + x_151 + x_219), x_219 >= 0, x_151 >= 0 encArg(z) -{ 0 }-> minus(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> minus(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 encArg(z) -{ 0 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 encode_*(z, z') -{ 0 }-> times(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_*(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> plus(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_0 -{ 0 }-> 0 :|: encode_minus(z) -{ 0 }-> minus(times(encArg(x_1148), encArg(x_258))) :|: x_258 >= 0, x_1148 >= 0, z = 1 + x_1148 + x_258 encode_minus(z) -{ 0 }-> minus(s(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(plus(encArg(x_1146), encArg(x_257))) :|: z = 1 + x_1146 + x_257, x_1146 >= 0, x_257 >= 0 encode_minus(z) -{ 0 }-> minus(p(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(0) :|: z = 0 encode_minus(z) -{ 0 }-> minus(0) :|: z >= 0 encode_minus(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> p(times(encArg(x_198), encArg(x_238))) :|: z = 1 + x_198 + x_238, x_198 >= 0, x_238 >= 0 encode_p(z) -{ 0 }-> p(s(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(plus(encArg(x_196), encArg(x_237))) :|: x_237 >= 0, x_196 >= 0, z = 1 + x_196 + x_237 encode_p(z) -{ 0 }-> p(p(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_p(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> s(times(encArg(x_1103), encArg(x_240))) :|: z = 1 + x_1103 + x_240, x_1103 >= 0, x_240 >= 0 encode_s(z) -{ 0 }-> s(s(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(plus(encArg(x_1101), encArg(x_239))) :|: x_1101 >= 0, x_239 >= 0, z = 1 + x_1101 + x_239 encode_s(z) -{ 0 }-> s(p(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 minus(z) -{ 2 }-> s(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> s(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 1 }-> 0 :|: z = 0 minus(z) -{ 0 }-> 0 :|: z >= 0 minus(z) -{ 2 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 minus(z) -{ 1 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 minus(z) -{ 2 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 minus(z) -{ 1 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 p(z) -{ 0 }-> 1 + z :|: z >= 0 plus(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 plus(z, z') -{ 2 }-> s(s(plus(z - 2, z'))) :|: z - 2 >= 0, z' >= 0 plus(z, z') -{ 2 }-> s(p(plus(z - 2, z'))) :|: z' >= 0, z - 2 >= 0 plus(z, z') -{ 2 }-> p(s(plus(z - 2, z'))) :|: z - 2 >= 0, z' >= 0 plus(z, z') -{ 2 }-> p(p(plus(z - 2, z'))) :|: z' >= 0, z - 2 >= 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 2 }-> 0 :|: z = 1 + 0, z' >= 0 plus(z, z') -{ 1 }-> 0 :|: z - 1 >= 0, z' >= 0, v0 >= 0, 0 = v0 plus(z, z') -{ 3 }-> z' - 1 :|: z = 1 + 0, z' >= 0, z' - 1 >= 0 plus(z, z') -{ 1 }-> 1 + x0 :|: z - 1 >= 0, z' >= 0, 0 = x0, x0 >= 0 plus(z, z') -{ 2 }-> 1 + z' :|: z = 1 + 0, z' >= 0 s(z) -{ 0 }-> 0 :|: z >= 0 s(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 s(z) -{ 0 }-> 1 + z :|: z >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), z') :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), 0) :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), z') :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), 0) :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), minus(0)), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), 0), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), s(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), p(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), s(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), p(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(0, z') :|: z = 1 + 0, z' >= 0 times(z, z') -{ 1 }-> plus(0, z') :|: z - 1 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(0, s(minus(z' - 1))) :|: z = 1 + 0, z' - 1 >= 0 times(z, z') -{ 2 }-> plus(0, s(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, p(minus(z' - 1))) :|: z' - 1 >= 0, z = 1 + 0 times(z, z') -{ 2 }-> plus(0, p(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, 0) :|: z = 1 + 0, z' = 0 times(z, z') -{ 2 }-> plus(0, 0) :|: z = 1 + 0, z' >= 0 times(z, z') -{ 2 }-> plus(0, 0) :|: z - 1 >= 0, z' = 0 times(z, z') -{ 1 }-> plus(0, 0) :|: z - 1 >= 0, z' >= 0 times(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 times(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {plus}, {minus}, {times}, {encArg}, {encode_p}, {encode_*}, {encode_minus}, {encode_+}, {encode_s} Previous analysis results are: encode_0: runtime: O(1) [0], size: O(1) [0] s: runtime: O(1) [1], size: O(n^1) [1 + z] p: runtime: O(1) [1], size: O(n^1) [1 + z] ---------------------------------------- (61) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using KoAT for: plus 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: encArg(z) -{ 0 }-> times(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> s(times(encArg(x_18), encArg(x_22))) :|: z = 1 + (1 + x_18 + x_22), x_18 >= 0, x_22 >= 0 encArg(z) -{ 0 }-> s(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(plus(encArg(x_16), encArg(x_21))) :|: z = 1 + (1 + x_16 + x_21), x_16 >= 0, x_21 >= 0 encArg(z) -{ 0 }-> s(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> plus(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> p(times(encArg(x_13), encArg(x_2''))) :|: x_13 >= 0, x_2'' >= 0, z = 1 + (1 + x_13 + x_2'') encArg(z) -{ 0 }-> p(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(plus(encArg(x_11), encArg(x_2'))) :|: x_11 >= 0, x_2' >= 0, z = 1 + (1 + x_11 + x_2') encArg(z) -{ 0 }-> p(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(times(encArg(x_153), encArg(x_220))) :|: x_153 >= 0, z = 1 + (1 + x_153 + x_220), x_220 >= 0 encArg(z) -{ 0 }-> minus(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(plus(encArg(x_151), encArg(x_219))) :|: z = 1 + (1 + x_151 + x_219), x_219 >= 0, x_151 >= 0 encArg(z) -{ 0 }-> minus(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> minus(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 encArg(z) -{ 0 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 encode_*(z, z') -{ 0 }-> times(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_*(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> plus(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_0 -{ 0 }-> 0 :|: encode_minus(z) -{ 0 }-> minus(times(encArg(x_1148), encArg(x_258))) :|: x_258 >= 0, x_1148 >= 0, z = 1 + x_1148 + x_258 encode_minus(z) -{ 0 }-> minus(s(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(plus(encArg(x_1146), encArg(x_257))) :|: z = 1 + x_1146 + x_257, x_1146 >= 0, x_257 >= 0 encode_minus(z) -{ 0 }-> minus(p(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(0) :|: z = 0 encode_minus(z) -{ 0 }-> minus(0) :|: z >= 0 encode_minus(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> p(times(encArg(x_198), encArg(x_238))) :|: z = 1 + x_198 + x_238, x_198 >= 0, x_238 >= 0 encode_p(z) -{ 0 }-> p(s(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(plus(encArg(x_196), encArg(x_237))) :|: x_237 >= 0, x_196 >= 0, z = 1 + x_196 + x_237 encode_p(z) -{ 0 }-> p(p(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_p(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> s(times(encArg(x_1103), encArg(x_240))) :|: z = 1 + x_1103 + x_240, x_1103 >= 0, x_240 >= 0 encode_s(z) -{ 0 }-> s(s(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(plus(encArg(x_1101), encArg(x_239))) :|: x_1101 >= 0, x_239 >= 0, z = 1 + x_1101 + x_239 encode_s(z) -{ 0 }-> s(p(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 minus(z) -{ 2 }-> s(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> s(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 1 }-> 0 :|: z = 0 minus(z) -{ 0 }-> 0 :|: z >= 0 minus(z) -{ 2 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 minus(z) -{ 1 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 minus(z) -{ 2 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 minus(z) -{ 1 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 p(z) -{ 0 }-> 1 + z :|: z >= 0 plus(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 plus(z, z') -{ 2 }-> s(s(plus(z - 2, z'))) :|: z - 2 >= 0, z' >= 0 plus(z, z') -{ 2 }-> s(p(plus(z - 2, z'))) :|: z' >= 0, z - 2 >= 0 plus(z, z') -{ 2 }-> p(s(plus(z - 2, z'))) :|: z - 2 >= 0, z' >= 0 plus(z, z') -{ 2 }-> p(p(plus(z - 2, z'))) :|: z' >= 0, z - 2 >= 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 2 }-> 0 :|: z = 1 + 0, z' >= 0 plus(z, z') -{ 1 }-> 0 :|: z - 1 >= 0, z' >= 0, v0 >= 0, 0 = v0 plus(z, z') -{ 3 }-> z' - 1 :|: z = 1 + 0, z' >= 0, z' - 1 >= 0 plus(z, z') -{ 1 }-> 1 + x0 :|: z - 1 >= 0, z' >= 0, 0 = x0, x0 >= 0 plus(z, z') -{ 2 }-> 1 + z' :|: z = 1 + 0, z' >= 0 s(z) -{ 0 }-> 0 :|: z >= 0 s(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 s(z) -{ 0 }-> 1 + z :|: z >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), z') :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), 0) :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), z') :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), 0) :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), minus(0)), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), 0), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), s(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), p(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), s(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), p(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(0, z') :|: z = 1 + 0, z' >= 0 times(z, z') -{ 1 }-> plus(0, z') :|: z - 1 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(0, s(minus(z' - 1))) :|: z = 1 + 0, z' - 1 >= 0 times(z, z') -{ 2 }-> plus(0, s(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, p(minus(z' - 1))) :|: z' - 1 >= 0, z = 1 + 0 times(z, z') -{ 2 }-> plus(0, p(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, 0) :|: z = 1 + 0, z' = 0 times(z, z') -{ 2 }-> plus(0, 0) :|: z = 1 + 0, z' >= 0 times(z, z') -{ 2 }-> plus(0, 0) :|: z - 1 >= 0, z' = 0 times(z, z') -{ 1 }-> plus(0, 0) :|: z - 1 >= 0, z' >= 0 times(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 times(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {plus}, {minus}, {times}, {encArg}, {encode_p}, {encode_*}, {encode_minus}, {encode_+}, {encode_s} Previous analysis results are: encode_0: runtime: O(1) [0], size: O(1) [0] s: runtime: O(1) [1], size: O(n^1) [1 + z] p: runtime: O(1) [1], size: O(n^1) [1 + z] plus: runtime: ?, size: O(n^1) [z + z'] ---------------------------------------- (63) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: plus after applying outer abstraction to obtain an ITS, resulting in: O(n^1) with polynomial bound: 7 + 4*z ---------------------------------------- (64) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 0 }-> times(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> s(times(encArg(x_18), encArg(x_22))) :|: z = 1 + (1 + x_18 + x_22), x_18 >= 0, x_22 >= 0 encArg(z) -{ 0 }-> s(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(plus(encArg(x_16), encArg(x_21))) :|: z = 1 + (1 + x_16 + x_21), x_16 >= 0, x_21 >= 0 encArg(z) -{ 0 }-> s(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> plus(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> p(times(encArg(x_13), encArg(x_2''))) :|: x_13 >= 0, x_2'' >= 0, z = 1 + (1 + x_13 + x_2'') encArg(z) -{ 0 }-> p(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(plus(encArg(x_11), encArg(x_2'))) :|: x_11 >= 0, x_2' >= 0, z = 1 + (1 + x_11 + x_2') encArg(z) -{ 0 }-> p(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(times(encArg(x_153), encArg(x_220))) :|: x_153 >= 0, z = 1 + (1 + x_153 + x_220), x_220 >= 0 encArg(z) -{ 0 }-> minus(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(plus(encArg(x_151), encArg(x_219))) :|: z = 1 + (1 + x_151 + x_219), x_219 >= 0, x_151 >= 0 encArg(z) -{ 0 }-> minus(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> minus(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 encArg(z) -{ 0 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 encode_*(z, z') -{ 0 }-> times(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_*(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> plus(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_0 -{ 0 }-> 0 :|: encode_minus(z) -{ 0 }-> minus(times(encArg(x_1148), encArg(x_258))) :|: x_258 >= 0, x_1148 >= 0, z = 1 + x_1148 + x_258 encode_minus(z) -{ 0 }-> minus(s(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(plus(encArg(x_1146), encArg(x_257))) :|: z = 1 + x_1146 + x_257, x_1146 >= 0, x_257 >= 0 encode_minus(z) -{ 0 }-> minus(p(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(0) :|: z = 0 encode_minus(z) -{ 0 }-> minus(0) :|: z >= 0 encode_minus(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> p(times(encArg(x_198), encArg(x_238))) :|: z = 1 + x_198 + x_238, x_198 >= 0, x_238 >= 0 encode_p(z) -{ 0 }-> p(s(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(plus(encArg(x_196), encArg(x_237))) :|: x_237 >= 0, x_196 >= 0, z = 1 + x_196 + x_237 encode_p(z) -{ 0 }-> p(p(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_p(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> s(times(encArg(x_1103), encArg(x_240))) :|: z = 1 + x_1103 + x_240, x_1103 >= 0, x_240 >= 0 encode_s(z) -{ 0 }-> s(s(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(plus(encArg(x_1101), encArg(x_239))) :|: x_1101 >= 0, x_239 >= 0, z = 1 + x_1101 + x_239 encode_s(z) -{ 0 }-> s(p(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 minus(z) -{ 2 }-> s(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> s(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 1 }-> 0 :|: z = 0 minus(z) -{ 0 }-> 0 :|: z >= 0 minus(z) -{ 2 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 minus(z) -{ 1 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 minus(z) -{ 2 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 minus(z) -{ 1 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 p(z) -{ 0 }-> 1 + z :|: z >= 0 plus(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 plus(z, z') -{ 2 }-> s(s(plus(z - 2, z'))) :|: z - 2 >= 0, z' >= 0 plus(z, z') -{ 2 }-> s(p(plus(z - 2, z'))) :|: z' >= 0, z - 2 >= 0 plus(z, z') -{ 2 }-> p(s(plus(z - 2, z'))) :|: z - 2 >= 0, z' >= 0 plus(z, z') -{ 2 }-> p(p(plus(z - 2, z'))) :|: z' >= 0, z - 2 >= 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 2 }-> 0 :|: z = 1 + 0, z' >= 0 plus(z, z') -{ 1 }-> 0 :|: z - 1 >= 0, z' >= 0, v0 >= 0, 0 = v0 plus(z, z') -{ 3 }-> z' - 1 :|: z = 1 + 0, z' >= 0, z' - 1 >= 0 plus(z, z') -{ 1 }-> 1 + x0 :|: z - 1 >= 0, z' >= 0, 0 = x0, x0 >= 0 plus(z, z') -{ 2 }-> 1 + z' :|: z = 1 + 0, z' >= 0 s(z) -{ 0 }-> 0 :|: z >= 0 s(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 s(z) -{ 0 }-> 1 + z :|: z >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), z') :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), 0) :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), z') :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), 0) :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), minus(0)), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), 0), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), s(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), p(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), s(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), p(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(0, z') :|: z = 1 + 0, z' >= 0 times(z, z') -{ 1 }-> plus(0, z') :|: z - 1 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(0, s(minus(z' - 1))) :|: z = 1 + 0, z' - 1 >= 0 times(z, z') -{ 2 }-> plus(0, s(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, p(minus(z' - 1))) :|: z' - 1 >= 0, z = 1 + 0 times(z, z') -{ 2 }-> plus(0, p(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, 0) :|: z = 1 + 0, z' = 0 times(z, z') -{ 2 }-> plus(0, 0) :|: z = 1 + 0, z' >= 0 times(z, z') -{ 2 }-> plus(0, 0) :|: z - 1 >= 0, z' = 0 times(z, z') -{ 1 }-> plus(0, 0) :|: z - 1 >= 0, z' >= 0 times(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 times(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {minus}, {times}, {encArg}, {encode_p}, {encode_*}, {encode_minus}, {encode_+}, {encode_s} Previous analysis results are: encode_0: runtime: O(1) [0], size: O(1) [0] s: runtime: O(1) [1], size: O(n^1) [1 + z] p: runtime: O(1) [1], size: O(n^1) [1 + z] plus: runtime: O(n^1) [7 + 4*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: encArg(z) -{ 0 }-> times(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> s(times(encArg(x_18), encArg(x_22))) :|: z = 1 + (1 + x_18 + x_22), x_18 >= 0, x_22 >= 0 encArg(z) -{ 0 }-> s(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(plus(encArg(x_16), encArg(x_21))) :|: z = 1 + (1 + x_16 + x_21), x_16 >= 0, x_21 >= 0 encArg(z) -{ 0 }-> s(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> plus(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> p(times(encArg(x_13), encArg(x_2''))) :|: x_13 >= 0, x_2'' >= 0, z = 1 + (1 + x_13 + x_2'') encArg(z) -{ 0 }-> p(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(plus(encArg(x_11), encArg(x_2'))) :|: x_11 >= 0, x_2' >= 0, z = 1 + (1 + x_11 + x_2') encArg(z) -{ 0 }-> p(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(times(encArg(x_153), encArg(x_220))) :|: x_153 >= 0, z = 1 + (1 + x_153 + x_220), x_220 >= 0 encArg(z) -{ 0 }-> minus(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(plus(encArg(x_151), encArg(x_219))) :|: z = 1 + (1 + x_151 + x_219), x_219 >= 0, x_151 >= 0 encArg(z) -{ 0 }-> minus(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> minus(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 encArg(z) -{ 0 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 encode_*(z, z') -{ 0 }-> times(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_*(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> plus(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_0 -{ 0 }-> 0 :|: encode_minus(z) -{ 0 }-> minus(times(encArg(x_1148), encArg(x_258))) :|: x_258 >= 0, x_1148 >= 0, z = 1 + x_1148 + x_258 encode_minus(z) -{ 0 }-> minus(s(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(plus(encArg(x_1146), encArg(x_257))) :|: z = 1 + x_1146 + x_257, x_1146 >= 0, x_257 >= 0 encode_minus(z) -{ 0 }-> minus(p(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(0) :|: z = 0 encode_minus(z) -{ 0 }-> minus(0) :|: z >= 0 encode_minus(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> p(times(encArg(x_198), encArg(x_238))) :|: z = 1 + x_198 + x_238, x_198 >= 0, x_238 >= 0 encode_p(z) -{ 0 }-> p(s(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(plus(encArg(x_196), encArg(x_237))) :|: x_237 >= 0, x_196 >= 0, z = 1 + x_196 + x_237 encode_p(z) -{ 0 }-> p(p(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_p(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> s(times(encArg(x_1103), encArg(x_240))) :|: z = 1 + x_1103 + x_240, x_1103 >= 0, x_240 >= 0 encode_s(z) -{ 0 }-> s(s(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(plus(encArg(x_1101), encArg(x_239))) :|: x_1101 >= 0, x_239 >= 0, z = 1 + x_1101 + x_239 encode_s(z) -{ 0 }-> s(p(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 minus(z) -{ 2 }-> s(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> s(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 1 }-> 0 :|: z = 0 minus(z) -{ 0 }-> 0 :|: z >= 0 minus(z) -{ 2 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 minus(z) -{ 1 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 minus(z) -{ 2 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 minus(z) -{ 1 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 p(z) -{ 0 }-> 1 + z :|: z >= 0 plus(z, z') -{ 3 + 4*z }-> s12 :|: s10 >= 0, s10 <= z - 2 + z', s11 >= 0, s11 <= s10 + 1, s12 >= 0, s12 <= s11 + 1, z' >= 0, z - 2 >= 0 plus(z, z') -{ 3 + 4*z }-> s15 :|: s13 >= 0, s13 <= z - 2 + z', s14 >= 0, s14 <= s13 + 1, s15 >= 0, s15 <= s14 + 1, z - 2 >= 0, z' >= 0 plus(z, z') -{ 3 + 4*z }-> s6 :|: s4 >= 0, s4 <= z - 2 + z', s5 >= 0, s5 <= s4 + 1, s6 >= 0, s6 <= s5 + 1, z' >= 0, z - 2 >= 0 plus(z, z') -{ 3 + 4*z }-> s9 :|: s7 >= 0, s7 <= z - 2 + z', s8 >= 0, s8 <= s7 + 1, s9 >= 0, s9 <= s8 + 1, z - 2 >= 0, z' >= 0 plus(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 2 }-> 0 :|: z = 1 + 0, z' >= 0 plus(z, z') -{ 1 }-> 0 :|: z - 1 >= 0, z' >= 0, v0 >= 0, 0 = v0 plus(z, z') -{ 3 }-> z' - 1 :|: z = 1 + 0, z' >= 0, z' - 1 >= 0 plus(z, z') -{ 1 }-> 1 + x0 :|: z - 1 >= 0, z' >= 0, 0 = x0, x0 >= 0 plus(z, z') -{ 2 }-> 1 + z' :|: z = 1 + 0, z' >= 0 s(z) -{ 0 }-> 0 :|: z >= 0 s(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 s(z) -{ 0 }-> 1 + z :|: z >= 0 times(z, z') -{ 10 }-> s :|: s >= 0, s <= 0 + 0, z = 1 + 0, z' = 0 times(z, z') -{ 9 }-> s' :|: s' >= 0, s' <= 0 + 0, z = 1 + 0, z' >= 0 times(z, z') -{ 9 }-> s'' :|: s'' >= 0, s'' <= 0 + 0, z - 1 >= 0, z' = 0 times(z, z') -{ 8 }-> s1 :|: s1 >= 0, s1 <= 0 + 0, z - 1 >= 0, z' >= 0 times(z, z') -{ 9 }-> s2 :|: s2 >= 0, s2 <= 0 + z', z = 1 + 0, z' >= 0 times(z, z') -{ 8 }-> s3 :|: s3 >= 0, s3 <= 0 + z', z - 1 >= 0, z' >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), z') :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), 0) :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), z') :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), 0) :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), minus(0)), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), 0), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), s(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), p(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), s(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), p(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 3 }-> plus(0, s(minus(z' - 1))) :|: z = 1 + 0, z' - 1 >= 0 times(z, z') -{ 2 }-> plus(0, s(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, p(minus(z' - 1))) :|: z' - 1 >= 0, z = 1 + 0 times(z, z') -{ 2 }-> plus(0, p(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 times(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {minus}, {times}, {encArg}, {encode_p}, {encode_*}, {encode_minus}, {encode_+}, {encode_s} Previous analysis results are: encode_0: runtime: O(1) [0], size: O(1) [0] s: runtime: O(1) [1], size: O(n^1) [1 + z] p: runtime: O(1) [1], size: O(n^1) [1 + z] plus: runtime: O(n^1) [7 + 4*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: encArg(z) -{ 0 }-> times(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> s(times(encArg(x_18), encArg(x_22))) :|: z = 1 + (1 + x_18 + x_22), x_18 >= 0, x_22 >= 0 encArg(z) -{ 0 }-> s(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(plus(encArg(x_16), encArg(x_21))) :|: z = 1 + (1 + x_16 + x_21), x_16 >= 0, x_21 >= 0 encArg(z) -{ 0 }-> s(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> plus(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> p(times(encArg(x_13), encArg(x_2''))) :|: x_13 >= 0, x_2'' >= 0, z = 1 + (1 + x_13 + x_2'') encArg(z) -{ 0 }-> p(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(plus(encArg(x_11), encArg(x_2'))) :|: x_11 >= 0, x_2' >= 0, z = 1 + (1 + x_11 + x_2') encArg(z) -{ 0 }-> p(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(times(encArg(x_153), encArg(x_220))) :|: x_153 >= 0, z = 1 + (1 + x_153 + x_220), x_220 >= 0 encArg(z) -{ 0 }-> minus(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(plus(encArg(x_151), encArg(x_219))) :|: z = 1 + (1 + x_151 + x_219), x_219 >= 0, x_151 >= 0 encArg(z) -{ 0 }-> minus(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> minus(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 encArg(z) -{ 0 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 encode_*(z, z') -{ 0 }-> times(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_*(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> plus(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_0 -{ 0 }-> 0 :|: encode_minus(z) -{ 0 }-> minus(times(encArg(x_1148), encArg(x_258))) :|: x_258 >= 0, x_1148 >= 0, z = 1 + x_1148 + x_258 encode_minus(z) -{ 0 }-> minus(s(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(plus(encArg(x_1146), encArg(x_257))) :|: z = 1 + x_1146 + x_257, x_1146 >= 0, x_257 >= 0 encode_minus(z) -{ 0 }-> minus(p(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(0) :|: z = 0 encode_minus(z) -{ 0 }-> minus(0) :|: z >= 0 encode_minus(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> p(times(encArg(x_198), encArg(x_238))) :|: z = 1 + x_198 + x_238, x_198 >= 0, x_238 >= 0 encode_p(z) -{ 0 }-> p(s(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(plus(encArg(x_196), encArg(x_237))) :|: x_237 >= 0, x_196 >= 0, z = 1 + x_196 + x_237 encode_p(z) -{ 0 }-> p(p(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_p(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> s(times(encArg(x_1103), encArg(x_240))) :|: z = 1 + x_1103 + x_240, x_1103 >= 0, x_240 >= 0 encode_s(z) -{ 0 }-> s(s(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(plus(encArg(x_1101), encArg(x_239))) :|: x_1101 >= 0, x_239 >= 0, z = 1 + x_1101 + x_239 encode_s(z) -{ 0 }-> s(p(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 minus(z) -{ 2 }-> s(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> s(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 1 }-> 0 :|: z = 0 minus(z) -{ 0 }-> 0 :|: z >= 0 minus(z) -{ 2 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 minus(z) -{ 1 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 minus(z) -{ 2 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 minus(z) -{ 1 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 p(z) -{ 0 }-> 1 + z :|: z >= 0 plus(z, z') -{ 3 + 4*z }-> s12 :|: s10 >= 0, s10 <= z - 2 + z', s11 >= 0, s11 <= s10 + 1, s12 >= 0, s12 <= s11 + 1, z' >= 0, z - 2 >= 0 plus(z, z') -{ 3 + 4*z }-> s15 :|: s13 >= 0, s13 <= z - 2 + z', s14 >= 0, s14 <= s13 + 1, s15 >= 0, s15 <= s14 + 1, z - 2 >= 0, z' >= 0 plus(z, z') -{ 3 + 4*z }-> s6 :|: s4 >= 0, s4 <= z - 2 + z', s5 >= 0, s5 <= s4 + 1, s6 >= 0, s6 <= s5 + 1, z' >= 0, z - 2 >= 0 plus(z, z') -{ 3 + 4*z }-> s9 :|: s7 >= 0, s7 <= z - 2 + z', s8 >= 0, s8 <= s7 + 1, s9 >= 0, s9 <= s8 + 1, z - 2 >= 0, z' >= 0 plus(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 2 }-> 0 :|: z = 1 + 0, z' >= 0 plus(z, z') -{ 1 }-> 0 :|: z - 1 >= 0, z' >= 0, v0 >= 0, 0 = v0 plus(z, z') -{ 3 }-> z' - 1 :|: z = 1 + 0, z' >= 0, z' - 1 >= 0 plus(z, z') -{ 1 }-> 1 + x0 :|: z - 1 >= 0, z' >= 0, 0 = x0, x0 >= 0 plus(z, z') -{ 2 }-> 1 + z' :|: z = 1 + 0, z' >= 0 s(z) -{ 0 }-> 0 :|: z >= 0 s(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 s(z) -{ 0 }-> 1 + z :|: z >= 0 times(z, z') -{ 10 }-> s :|: s >= 0, s <= 0 + 0, z = 1 + 0, z' = 0 times(z, z') -{ 9 }-> s' :|: s' >= 0, s' <= 0 + 0, z = 1 + 0, z' >= 0 times(z, z') -{ 9 }-> s'' :|: s'' >= 0, s'' <= 0 + 0, z - 1 >= 0, z' = 0 times(z, z') -{ 8 }-> s1 :|: s1 >= 0, s1 <= 0 + 0, z - 1 >= 0, z' >= 0 times(z, z') -{ 9 }-> s2 :|: s2 >= 0, s2 <= 0 + z', z = 1 + 0, z' >= 0 times(z, z') -{ 8 }-> s3 :|: s3 >= 0, s3 <= 0 + z', z - 1 >= 0, z' >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), z') :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), 0) :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), z') :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), 0) :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), minus(0)), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), 0), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), s(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), p(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), s(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), p(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 3 }-> plus(0, s(minus(z' - 1))) :|: z = 1 + 0, z' - 1 >= 0 times(z, z') -{ 2 }-> plus(0, s(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, p(minus(z' - 1))) :|: z' - 1 >= 0, z = 1 + 0 times(z, z') -{ 2 }-> plus(0, p(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 times(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {minus}, {times}, {encArg}, {encode_p}, {encode_*}, {encode_minus}, {encode_+}, {encode_s} Previous analysis results are: encode_0: runtime: O(1) [0], size: O(1) [0] s: runtime: O(1) [1], size: O(n^1) [1 + z] p: runtime: O(1) [1], size: O(n^1) [1 + z] plus: runtime: O(n^1) [7 + 4*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: 6 + 4*z ---------------------------------------- (70) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 0 }-> times(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> s(times(encArg(x_18), encArg(x_22))) :|: z = 1 + (1 + x_18 + x_22), x_18 >= 0, x_22 >= 0 encArg(z) -{ 0 }-> s(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(plus(encArg(x_16), encArg(x_21))) :|: z = 1 + (1 + x_16 + x_21), x_16 >= 0, x_21 >= 0 encArg(z) -{ 0 }-> s(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> plus(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> p(times(encArg(x_13), encArg(x_2''))) :|: x_13 >= 0, x_2'' >= 0, z = 1 + (1 + x_13 + x_2'') encArg(z) -{ 0 }-> p(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(plus(encArg(x_11), encArg(x_2'))) :|: x_11 >= 0, x_2' >= 0, z = 1 + (1 + x_11 + x_2') encArg(z) -{ 0 }-> p(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(times(encArg(x_153), encArg(x_220))) :|: x_153 >= 0, z = 1 + (1 + x_153 + x_220), x_220 >= 0 encArg(z) -{ 0 }-> minus(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(plus(encArg(x_151), encArg(x_219))) :|: z = 1 + (1 + x_151 + x_219), x_219 >= 0, x_151 >= 0 encArg(z) -{ 0 }-> minus(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(0) :|: z = 1 + 0 encArg(z) -{ 0 }-> minus(0) :|: z - 1 >= 0 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 encArg(z) -{ 0 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 encode_*(z, z') -{ 0 }-> times(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_*(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> plus(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_0 -{ 0 }-> 0 :|: encode_minus(z) -{ 0 }-> minus(times(encArg(x_1148), encArg(x_258))) :|: x_258 >= 0, x_1148 >= 0, z = 1 + x_1148 + x_258 encode_minus(z) -{ 0 }-> minus(s(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(plus(encArg(x_1146), encArg(x_257))) :|: z = 1 + x_1146 + x_257, x_1146 >= 0, x_257 >= 0 encode_minus(z) -{ 0 }-> minus(p(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(0) :|: z = 0 encode_minus(z) -{ 0 }-> minus(0) :|: z >= 0 encode_minus(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> p(times(encArg(x_198), encArg(x_238))) :|: z = 1 + x_198 + x_238, x_198 >= 0, x_238 >= 0 encode_p(z) -{ 0 }-> p(s(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(plus(encArg(x_196), encArg(x_237))) :|: x_237 >= 0, x_196 >= 0, z = 1 + x_196 + x_237 encode_p(z) -{ 0 }-> p(p(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_p(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> s(times(encArg(x_1103), encArg(x_240))) :|: z = 1 + x_1103 + x_240, x_1103 >= 0, x_240 >= 0 encode_s(z) -{ 0 }-> s(s(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(plus(encArg(x_1101), encArg(x_239))) :|: x_1101 >= 0, x_239 >= 0, z = 1 + x_1101 + x_239 encode_s(z) -{ 0 }-> s(p(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 minus(z) -{ 2 }-> s(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> s(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(s(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 2 }-> p(p(minus(z - 2))) :|: z - 2 >= 0 minus(z) -{ 1 }-> 0 :|: z = 0 minus(z) -{ 0 }-> 0 :|: z >= 0 minus(z) -{ 2 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 minus(z) -{ 1 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 minus(z) -{ 2 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 minus(z) -{ 1 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 p(z) -{ 0 }-> 1 + z :|: z >= 0 plus(z, z') -{ 3 + 4*z }-> s12 :|: s10 >= 0, s10 <= z - 2 + z', s11 >= 0, s11 <= s10 + 1, s12 >= 0, s12 <= s11 + 1, z' >= 0, z - 2 >= 0 plus(z, z') -{ 3 + 4*z }-> s15 :|: s13 >= 0, s13 <= z - 2 + z', s14 >= 0, s14 <= s13 + 1, s15 >= 0, s15 <= s14 + 1, z - 2 >= 0, z' >= 0 plus(z, z') -{ 3 + 4*z }-> s6 :|: s4 >= 0, s4 <= z - 2 + z', s5 >= 0, s5 <= s4 + 1, s6 >= 0, s6 <= s5 + 1, z' >= 0, z - 2 >= 0 plus(z, z') -{ 3 + 4*z }-> s9 :|: s7 >= 0, s7 <= z - 2 + z', s8 >= 0, s8 <= s7 + 1, s9 >= 0, s9 <= s8 + 1, z - 2 >= 0, z' >= 0 plus(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 2 }-> 0 :|: z = 1 + 0, z' >= 0 plus(z, z') -{ 1 }-> 0 :|: z - 1 >= 0, z' >= 0, v0 >= 0, 0 = v0 plus(z, z') -{ 3 }-> z' - 1 :|: z = 1 + 0, z' >= 0, z' - 1 >= 0 plus(z, z') -{ 1 }-> 1 + x0 :|: z - 1 >= 0, z' >= 0, 0 = x0, x0 >= 0 plus(z, z') -{ 2 }-> 1 + z' :|: z = 1 + 0, z' >= 0 s(z) -{ 0 }-> 0 :|: z >= 0 s(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 s(z) -{ 0 }-> 1 + z :|: z >= 0 times(z, z') -{ 10 }-> s :|: s >= 0, s <= 0 + 0, z = 1 + 0, z' = 0 times(z, z') -{ 9 }-> s' :|: s' >= 0, s' <= 0 + 0, z = 1 + 0, z' >= 0 times(z, z') -{ 9 }-> s'' :|: s'' >= 0, s'' <= 0 + 0, z - 1 >= 0, z' = 0 times(z, z') -{ 8 }-> s1 :|: s1 >= 0, s1 <= 0 + 0, z - 1 >= 0, z' >= 0 times(z, z') -{ 9 }-> s2 :|: s2 >= 0, s2 <= 0 + z', z = 1 + 0, z' >= 0 times(z, z') -{ 8 }-> s3 :|: s3 >= 0, s3 <= 0 + z', z - 1 >= 0, z' >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), z') :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), 0) :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), z') :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), minus(z')), 0) :|: z - 2 >= 0, z' >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), minus(0)), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), 0), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), s(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), minus(1 + (z' - 1))), p(minus(z' - 1))) :|: z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), s(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), p(minus(z' - 1))) :|: z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 3 }-> plus(0, s(minus(z' - 1))) :|: z = 1 + 0, z' - 1 >= 0 times(z, z') -{ 2 }-> plus(0, s(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 3 }-> plus(0, p(minus(z' - 1))) :|: z' - 1 >= 0, z = 1 + 0 times(z, z') -{ 2 }-> plus(0, p(minus(z' - 1))) :|: z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 times(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {times}, {encArg}, {encode_p}, {encode_*}, {encode_minus}, {encode_+}, {encode_s} Previous analysis results are: encode_0: runtime: O(1) [0], size: O(1) [0] s: runtime: O(1) [1], size: O(n^1) [1 + z] p: runtime: O(1) [1], size: O(n^1) [1 + z] plus: runtime: O(n^1) [7 + 4*z], size: O(n^1) [z + z'] minus: runtime: O(n^1) [6 + 4*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: encArg(z) -{ 6 }-> s19 :|: s19 >= 0, s19 <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s20 :|: s20 >= 0, s20 <= 0, z - 1 >= 0 encArg(z) -{ 0 }-> times(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> s(times(encArg(x_18), encArg(x_22))) :|: z = 1 + (1 + x_18 + x_22), x_18 >= 0, x_22 >= 0 encArg(z) -{ 0 }-> s(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(plus(encArg(x_16), encArg(x_21))) :|: z = 1 + (1 + x_16 + x_21), x_16 >= 0, x_21 >= 0 encArg(z) -{ 0 }-> s(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> plus(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> p(times(encArg(x_13), encArg(x_2''))) :|: x_13 >= 0, x_2'' >= 0, z = 1 + (1 + x_13 + x_2'') encArg(z) -{ 0 }-> p(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(plus(encArg(x_11), encArg(x_2'))) :|: x_11 >= 0, x_2' >= 0, z = 1 + (1 + x_11 + x_2') encArg(z) -{ 0 }-> p(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(times(encArg(x_153), encArg(x_220))) :|: x_153 >= 0, z = 1 + (1 + x_153 + x_220), x_220 >= 0 encArg(z) -{ 0 }-> minus(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(plus(encArg(x_151), encArg(x_219))) :|: z = 1 + (1 + x_151 + x_219), x_219 >= 0, x_151 >= 0 encArg(z) -{ 0 }-> minus(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 encArg(z) -{ 0 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 encode_*(z, z') -{ 0 }-> times(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_*(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> plus(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_0 -{ 0 }-> 0 :|: encode_minus(z) -{ 6 }-> s21 :|: s21 >= 0, s21 <= 0, z = 0 encode_minus(z) -{ 6 }-> s22 :|: s22 >= 0, s22 <= 0, z >= 0 encode_minus(z) -{ 0 }-> minus(times(encArg(x_1148), encArg(x_258))) :|: x_258 >= 0, x_1148 >= 0, z = 1 + x_1148 + x_258 encode_minus(z) -{ 0 }-> minus(s(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(plus(encArg(x_1146), encArg(x_257))) :|: z = 1 + x_1146 + x_257, x_1146 >= 0, x_257 >= 0 encode_minus(z) -{ 0 }-> minus(p(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> p(times(encArg(x_198), encArg(x_238))) :|: z = 1 + x_198 + x_238, x_198 >= 0, x_238 >= 0 encode_p(z) -{ 0 }-> p(s(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(plus(encArg(x_196), encArg(x_237))) :|: x_237 >= 0, x_196 >= 0, z = 1 + x_196 + x_237 encode_p(z) -{ 0 }-> p(p(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_p(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> s(times(encArg(x_1103), encArg(x_240))) :|: z = 1 + x_1103 + x_240, x_1103 >= 0, x_240 >= 0 encode_s(z) -{ 0 }-> s(s(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(plus(encArg(x_1101), encArg(x_239))) :|: x_1101 >= 0, x_239 >= 0, z = 1 + x_1101 + x_239 encode_s(z) -{ 0 }-> s(p(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 minus(z) -{ 2 + 4*z }-> s36 :|: s34 >= 0, s34 <= z - 2, s35 >= 0, s35 <= s34 + 1, s36 >= 0, s36 <= s35 + 1, z - 2 >= 0 minus(z) -{ 2 + 4*z }-> s50 :|: s48 >= 0, s48 <= z - 2, s49 >= 0, s49 <= s48 + 1, s50 >= 0, s50 <= s49 + 1, z - 2 >= 0 minus(z) -{ 2 + 4*z }-> s53 :|: s51 >= 0, s51 <= z - 2, s52 >= 0, s52 <= s51 + 1, s53 >= 0, s53 <= s52 + 1, z - 2 >= 0 minus(z) -{ 2 + 4*z }-> s56 :|: s54 >= 0, s54 <= z - 2, s55 >= 0, s55 <= s54 + 1, s56 >= 0, s56 <= s55 + 1, z - 2 >= 0 minus(z) -{ 1 }-> 0 :|: z = 0 minus(z) -{ 0 }-> 0 :|: z >= 0 minus(z) -{ 2 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 minus(z) -{ 1 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 minus(z) -{ 2 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 minus(z) -{ 1 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 p(z) -{ 0 }-> 1 + z :|: z >= 0 plus(z, z') -{ 3 + 4*z }-> s12 :|: s10 >= 0, s10 <= z - 2 + z', s11 >= 0, s11 <= s10 + 1, s12 >= 0, s12 <= s11 + 1, z' >= 0, z - 2 >= 0 plus(z, z') -{ 3 + 4*z }-> s15 :|: s13 >= 0, s13 <= z - 2 + z', s14 >= 0, s14 <= s13 + 1, s15 >= 0, s15 <= s14 + 1, z - 2 >= 0, z' >= 0 plus(z, z') -{ 3 + 4*z }-> s6 :|: s4 >= 0, s4 <= z - 2 + z', s5 >= 0, s5 <= s4 + 1, s6 >= 0, s6 <= s5 + 1, z' >= 0, z - 2 >= 0 plus(z, z') -{ 3 + 4*z }-> s9 :|: s7 >= 0, s7 <= z - 2 + z', s8 >= 0, s8 <= s7 + 1, s9 >= 0, s9 <= s8 + 1, z - 2 >= 0, z' >= 0 plus(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 2 }-> 0 :|: z = 1 + 0, z' >= 0 plus(z, z') -{ 1 }-> 0 :|: z - 1 >= 0, z' >= 0, v0 >= 0, 0 = v0 plus(z, z') -{ 3 }-> z' - 1 :|: z = 1 + 0, z' >= 0, z' - 1 >= 0 plus(z, z') -{ 1 }-> 1 + x0 :|: z - 1 >= 0, z' >= 0, 0 = x0, x0 >= 0 plus(z, z') -{ 2 }-> 1 + z' :|: z = 1 + 0, z' >= 0 s(z) -{ 0 }-> 0 :|: z >= 0 s(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 s(z) -{ 0 }-> 1 + z :|: z >= 0 times(z, z') -{ 10 }-> s :|: s >= 0, s <= 0 + 0, z = 1 + 0, z' = 0 times(z, z') -{ 9 }-> s' :|: s' >= 0, s' <= 0 + 0, z = 1 + 0, z' >= 0 times(z, z') -{ 9 }-> s'' :|: s'' >= 0, s'' <= 0 + 0, z - 1 >= 0, z' = 0 times(z, z') -{ 8 }-> s1 :|: s1 >= 0, s1 <= 0 + 0, z - 1 >= 0, z' >= 0 times(z, z') -{ 9 }-> s2 :|: s2 >= 0, s2 <= 0 + z', z = 1 + 0, z' >= 0 times(z, z') -{ 13 + 4*z' }-> s25 :|: s23 >= 0, s23 <= z' - 1, s24 >= 0, s24 <= s23 + 1, s25 >= 0, s25 <= 0 + s24, z' - 1 >= 0, z = 1 + 0 times(z, z') -{ 8 }-> s3 :|: s3 >= 0, s3 <= 0 + z', z - 1 >= 0, z' >= 0 times(z, z') -{ 12 + 4*z' }-> s33 :|: s31 >= 0, s31 <= z' - 1, s32 >= 0, s32 <= s31 + 1, s33 >= 0, s33 <= 0 + s32, z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 13 + 4*z' }-> s39 :|: s37 >= 0, s37 <= z' - 1, s38 >= 0, s38 <= s37 + 1, s39 >= 0, s39 <= 0 + s38, z = 1 + 0, z' - 1 >= 0 times(z, z') -{ 12 + 4*z' }-> s47 :|: s45 >= 0, s45 <= z' - 1, s46 >= 0, s46 <= s45 + 1, s47 >= 0, s47 <= 0 + s46, z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 8 + 4*z' }-> plus(plus(times(z - 2, z'), s17), 0) :|: s17 >= 0, s17 <= z', z - 2 >= 0, z' >= 0 times(z, z') -{ 8 + 4*z' }-> plus(plus(times(z - 2, z'), s18), z') :|: s18 >= 0, s18 <= z', z - 2 >= 0, z' >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), z') :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), 0) :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 9 }-> plus(plus(times(z - 2, 0), s16), 0) :|: s16 >= 0, s16 <= 0, z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), 0), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 12 + 8*z' }-> plus(plus(times(z - 2, 1 + (z' - 1)), s26), s28) :|: s26 >= 0, s26 <= 1 + (z' - 1), s27 >= 0, s27 <= z' - 1, s28 >= 0, s28 <= s27 + 1, z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 12 + 8*z' }-> plus(plus(times(z - 2, 1 + (z' - 1)), s40), s42) :|: s40 >= 0, s40 <= 1 + (z' - 1), s41 >= 0, s41 <= z' - 1, s42 >= 0, s42 <= s41 + 1, z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 6 + 4*z' }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), s30) :|: s29 >= 0, s29 <= z' - 1, s30 >= 0, s30 <= s29 + 1, z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 6 + 4*z' }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), s44) :|: s43 >= 0, s43 <= z' - 1, s44 >= 0, s44 <= s43 + 1, z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 times(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {times}, {encArg}, {encode_p}, {encode_*}, {encode_minus}, {encode_+}, {encode_s} Previous analysis results are: encode_0: runtime: O(1) [0], size: O(1) [0] s: runtime: O(1) [1], size: O(n^1) [1 + z] p: runtime: O(1) [1], size: O(n^1) [1 + z] plus: runtime: O(n^1) [7 + 4*z], size: O(n^1) [z + z'] minus: runtime: O(n^1) [6 + 4*z], size: O(n^1) [z] ---------------------------------------- (73) IntTrsBoundProof (UPPER BOUND(ID)) Computed SIZE bound using CoFloCo for: times after applying outer abstraction to obtain an ITS, resulting in: O(n^2) with polynomial bound: 2*z*z' + 3*z' ---------------------------------------- (74) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 6 }-> s19 :|: s19 >= 0, s19 <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s20 :|: s20 >= 0, s20 <= 0, z - 1 >= 0 encArg(z) -{ 0 }-> times(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> s(times(encArg(x_18), encArg(x_22))) :|: z = 1 + (1 + x_18 + x_22), x_18 >= 0, x_22 >= 0 encArg(z) -{ 0 }-> s(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(plus(encArg(x_16), encArg(x_21))) :|: z = 1 + (1 + x_16 + x_21), x_16 >= 0, x_21 >= 0 encArg(z) -{ 0 }-> s(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> plus(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> p(times(encArg(x_13), encArg(x_2''))) :|: x_13 >= 0, x_2'' >= 0, z = 1 + (1 + x_13 + x_2'') encArg(z) -{ 0 }-> p(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(plus(encArg(x_11), encArg(x_2'))) :|: x_11 >= 0, x_2' >= 0, z = 1 + (1 + x_11 + x_2') encArg(z) -{ 0 }-> p(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(times(encArg(x_153), encArg(x_220))) :|: x_153 >= 0, z = 1 + (1 + x_153 + x_220), x_220 >= 0 encArg(z) -{ 0 }-> minus(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(plus(encArg(x_151), encArg(x_219))) :|: z = 1 + (1 + x_151 + x_219), x_219 >= 0, x_151 >= 0 encArg(z) -{ 0 }-> minus(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 encArg(z) -{ 0 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 encode_*(z, z') -{ 0 }-> times(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_*(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> plus(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_0 -{ 0 }-> 0 :|: encode_minus(z) -{ 6 }-> s21 :|: s21 >= 0, s21 <= 0, z = 0 encode_minus(z) -{ 6 }-> s22 :|: s22 >= 0, s22 <= 0, z >= 0 encode_minus(z) -{ 0 }-> minus(times(encArg(x_1148), encArg(x_258))) :|: x_258 >= 0, x_1148 >= 0, z = 1 + x_1148 + x_258 encode_minus(z) -{ 0 }-> minus(s(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(plus(encArg(x_1146), encArg(x_257))) :|: z = 1 + x_1146 + x_257, x_1146 >= 0, x_257 >= 0 encode_minus(z) -{ 0 }-> minus(p(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> p(times(encArg(x_198), encArg(x_238))) :|: z = 1 + x_198 + x_238, x_198 >= 0, x_238 >= 0 encode_p(z) -{ 0 }-> p(s(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(plus(encArg(x_196), encArg(x_237))) :|: x_237 >= 0, x_196 >= 0, z = 1 + x_196 + x_237 encode_p(z) -{ 0 }-> p(p(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_p(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> s(times(encArg(x_1103), encArg(x_240))) :|: z = 1 + x_1103 + x_240, x_1103 >= 0, x_240 >= 0 encode_s(z) -{ 0 }-> s(s(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(plus(encArg(x_1101), encArg(x_239))) :|: x_1101 >= 0, x_239 >= 0, z = 1 + x_1101 + x_239 encode_s(z) -{ 0 }-> s(p(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 minus(z) -{ 2 + 4*z }-> s36 :|: s34 >= 0, s34 <= z - 2, s35 >= 0, s35 <= s34 + 1, s36 >= 0, s36 <= s35 + 1, z - 2 >= 0 minus(z) -{ 2 + 4*z }-> s50 :|: s48 >= 0, s48 <= z - 2, s49 >= 0, s49 <= s48 + 1, s50 >= 0, s50 <= s49 + 1, z - 2 >= 0 minus(z) -{ 2 + 4*z }-> s53 :|: s51 >= 0, s51 <= z - 2, s52 >= 0, s52 <= s51 + 1, s53 >= 0, s53 <= s52 + 1, z - 2 >= 0 minus(z) -{ 2 + 4*z }-> s56 :|: s54 >= 0, s54 <= z - 2, s55 >= 0, s55 <= s54 + 1, s56 >= 0, s56 <= s55 + 1, z - 2 >= 0 minus(z) -{ 1 }-> 0 :|: z = 0 minus(z) -{ 0 }-> 0 :|: z >= 0 minus(z) -{ 2 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 minus(z) -{ 1 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 minus(z) -{ 2 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 minus(z) -{ 1 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 p(z) -{ 0 }-> 1 + z :|: z >= 0 plus(z, z') -{ 3 + 4*z }-> s12 :|: s10 >= 0, s10 <= z - 2 + z', s11 >= 0, s11 <= s10 + 1, s12 >= 0, s12 <= s11 + 1, z' >= 0, z - 2 >= 0 plus(z, z') -{ 3 + 4*z }-> s15 :|: s13 >= 0, s13 <= z - 2 + z', s14 >= 0, s14 <= s13 + 1, s15 >= 0, s15 <= s14 + 1, z - 2 >= 0, z' >= 0 plus(z, z') -{ 3 + 4*z }-> s6 :|: s4 >= 0, s4 <= z - 2 + z', s5 >= 0, s5 <= s4 + 1, s6 >= 0, s6 <= s5 + 1, z' >= 0, z - 2 >= 0 plus(z, z') -{ 3 + 4*z }-> s9 :|: s7 >= 0, s7 <= z - 2 + z', s8 >= 0, s8 <= s7 + 1, s9 >= 0, s9 <= s8 + 1, z - 2 >= 0, z' >= 0 plus(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 2 }-> 0 :|: z = 1 + 0, z' >= 0 plus(z, z') -{ 1 }-> 0 :|: z - 1 >= 0, z' >= 0, v0 >= 0, 0 = v0 plus(z, z') -{ 3 }-> z' - 1 :|: z = 1 + 0, z' >= 0, z' - 1 >= 0 plus(z, z') -{ 1 }-> 1 + x0 :|: z - 1 >= 0, z' >= 0, 0 = x0, x0 >= 0 plus(z, z') -{ 2 }-> 1 + z' :|: z = 1 + 0, z' >= 0 s(z) -{ 0 }-> 0 :|: z >= 0 s(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 s(z) -{ 0 }-> 1 + z :|: z >= 0 times(z, z') -{ 10 }-> s :|: s >= 0, s <= 0 + 0, z = 1 + 0, z' = 0 times(z, z') -{ 9 }-> s' :|: s' >= 0, s' <= 0 + 0, z = 1 + 0, z' >= 0 times(z, z') -{ 9 }-> s'' :|: s'' >= 0, s'' <= 0 + 0, z - 1 >= 0, z' = 0 times(z, z') -{ 8 }-> s1 :|: s1 >= 0, s1 <= 0 + 0, z - 1 >= 0, z' >= 0 times(z, z') -{ 9 }-> s2 :|: s2 >= 0, s2 <= 0 + z', z = 1 + 0, z' >= 0 times(z, z') -{ 13 + 4*z' }-> s25 :|: s23 >= 0, s23 <= z' - 1, s24 >= 0, s24 <= s23 + 1, s25 >= 0, s25 <= 0 + s24, z' - 1 >= 0, z = 1 + 0 times(z, z') -{ 8 }-> s3 :|: s3 >= 0, s3 <= 0 + z', z - 1 >= 0, z' >= 0 times(z, z') -{ 12 + 4*z' }-> s33 :|: s31 >= 0, s31 <= z' - 1, s32 >= 0, s32 <= s31 + 1, s33 >= 0, s33 <= 0 + s32, z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 13 + 4*z' }-> s39 :|: s37 >= 0, s37 <= z' - 1, s38 >= 0, s38 <= s37 + 1, s39 >= 0, s39 <= 0 + s38, z = 1 + 0, z' - 1 >= 0 times(z, z') -{ 12 + 4*z' }-> s47 :|: s45 >= 0, s45 <= z' - 1, s46 >= 0, s46 <= s45 + 1, s47 >= 0, s47 <= 0 + s46, z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 8 + 4*z' }-> plus(plus(times(z - 2, z'), s17), 0) :|: s17 >= 0, s17 <= z', z - 2 >= 0, z' >= 0 times(z, z') -{ 8 + 4*z' }-> plus(plus(times(z - 2, z'), s18), z') :|: s18 >= 0, s18 <= z', z - 2 >= 0, z' >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), z') :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), 0) :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 9 }-> plus(plus(times(z - 2, 0), s16), 0) :|: s16 >= 0, s16 <= 0, z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), 0), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 12 + 8*z' }-> plus(plus(times(z - 2, 1 + (z' - 1)), s26), s28) :|: s26 >= 0, s26 <= 1 + (z' - 1), s27 >= 0, s27 <= z' - 1, s28 >= 0, s28 <= s27 + 1, z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 12 + 8*z' }-> plus(plus(times(z - 2, 1 + (z' - 1)), s40), s42) :|: s40 >= 0, s40 <= 1 + (z' - 1), s41 >= 0, s41 <= z' - 1, s42 >= 0, s42 <= s41 + 1, z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 6 + 4*z' }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), s30) :|: s29 >= 0, s29 <= z' - 1, s30 >= 0, s30 <= s29 + 1, z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 6 + 4*z' }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), s44) :|: s43 >= 0, s43 <= z' - 1, s44 >= 0, s44 <= s43 + 1, z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 times(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {times}, {encArg}, {encode_p}, {encode_*}, {encode_minus}, {encode_+}, {encode_s} Previous analysis results are: encode_0: runtime: O(1) [0], size: O(1) [0] s: runtime: O(1) [1], size: O(n^1) [1 + z] p: runtime: O(1) [1], size: O(n^1) [1 + z] plus: runtime: O(n^1) [7 + 4*z], size: O(n^1) [z + z'] minus: runtime: O(n^1) [6 + 4*z], size: O(n^1) [z] times: runtime: ?, size: O(n^2) [2*z*z' + 3*z'] ---------------------------------------- (75) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using KoAT for: times after applying outer abstraction to obtain an ITS, resulting in: O(n^3) with polynomial bound: 104 + 192*z + 8*z*z' + 112*z^2*z' + 16*z' ---------------------------------------- (76) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 6 }-> s19 :|: s19 >= 0, s19 <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s20 :|: s20 >= 0, s20 <= 0, z - 1 >= 0 encArg(z) -{ 0 }-> times(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> s(times(encArg(x_18), encArg(x_22))) :|: z = 1 + (1 + x_18 + x_22), x_18 >= 0, x_22 >= 0 encArg(z) -{ 0 }-> s(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(plus(encArg(x_16), encArg(x_21))) :|: z = 1 + (1 + x_16 + x_21), x_16 >= 0, x_21 >= 0 encArg(z) -{ 0 }-> s(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> plus(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> p(times(encArg(x_13), encArg(x_2''))) :|: x_13 >= 0, x_2'' >= 0, z = 1 + (1 + x_13 + x_2'') encArg(z) -{ 0 }-> p(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(plus(encArg(x_11), encArg(x_2'))) :|: x_11 >= 0, x_2' >= 0, z = 1 + (1 + x_11 + x_2') encArg(z) -{ 0 }-> p(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(times(encArg(x_153), encArg(x_220))) :|: x_153 >= 0, z = 1 + (1 + x_153 + x_220), x_220 >= 0 encArg(z) -{ 0 }-> minus(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(plus(encArg(x_151), encArg(x_219))) :|: z = 1 + (1 + x_151 + x_219), x_219 >= 0, x_151 >= 0 encArg(z) -{ 0 }-> minus(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 encArg(z) -{ 0 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 encode_*(z, z') -{ 0 }-> times(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_*(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> plus(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_0 -{ 0 }-> 0 :|: encode_minus(z) -{ 6 }-> s21 :|: s21 >= 0, s21 <= 0, z = 0 encode_minus(z) -{ 6 }-> s22 :|: s22 >= 0, s22 <= 0, z >= 0 encode_minus(z) -{ 0 }-> minus(times(encArg(x_1148), encArg(x_258))) :|: x_258 >= 0, x_1148 >= 0, z = 1 + x_1148 + x_258 encode_minus(z) -{ 0 }-> minus(s(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(plus(encArg(x_1146), encArg(x_257))) :|: z = 1 + x_1146 + x_257, x_1146 >= 0, x_257 >= 0 encode_minus(z) -{ 0 }-> minus(p(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> p(times(encArg(x_198), encArg(x_238))) :|: z = 1 + x_198 + x_238, x_198 >= 0, x_238 >= 0 encode_p(z) -{ 0 }-> p(s(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(plus(encArg(x_196), encArg(x_237))) :|: x_237 >= 0, x_196 >= 0, z = 1 + x_196 + x_237 encode_p(z) -{ 0 }-> p(p(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_p(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> s(times(encArg(x_1103), encArg(x_240))) :|: z = 1 + x_1103 + x_240, x_1103 >= 0, x_240 >= 0 encode_s(z) -{ 0 }-> s(s(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(plus(encArg(x_1101), encArg(x_239))) :|: x_1101 >= 0, x_239 >= 0, z = 1 + x_1101 + x_239 encode_s(z) -{ 0 }-> s(p(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 minus(z) -{ 2 + 4*z }-> s36 :|: s34 >= 0, s34 <= z - 2, s35 >= 0, s35 <= s34 + 1, s36 >= 0, s36 <= s35 + 1, z - 2 >= 0 minus(z) -{ 2 + 4*z }-> s50 :|: s48 >= 0, s48 <= z - 2, s49 >= 0, s49 <= s48 + 1, s50 >= 0, s50 <= s49 + 1, z - 2 >= 0 minus(z) -{ 2 + 4*z }-> s53 :|: s51 >= 0, s51 <= z - 2, s52 >= 0, s52 <= s51 + 1, s53 >= 0, s53 <= s52 + 1, z - 2 >= 0 minus(z) -{ 2 + 4*z }-> s56 :|: s54 >= 0, s54 <= z - 2, s55 >= 0, s55 <= s54 + 1, s56 >= 0, s56 <= s55 + 1, z - 2 >= 0 minus(z) -{ 1 }-> 0 :|: z = 0 minus(z) -{ 0 }-> 0 :|: z >= 0 minus(z) -{ 2 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 minus(z) -{ 1 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 minus(z) -{ 2 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 minus(z) -{ 1 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 p(z) -{ 0 }-> 1 + z :|: z >= 0 plus(z, z') -{ 3 + 4*z }-> s12 :|: s10 >= 0, s10 <= z - 2 + z', s11 >= 0, s11 <= s10 + 1, s12 >= 0, s12 <= s11 + 1, z' >= 0, z - 2 >= 0 plus(z, z') -{ 3 + 4*z }-> s15 :|: s13 >= 0, s13 <= z - 2 + z', s14 >= 0, s14 <= s13 + 1, s15 >= 0, s15 <= s14 + 1, z - 2 >= 0, z' >= 0 plus(z, z') -{ 3 + 4*z }-> s6 :|: s4 >= 0, s4 <= z - 2 + z', s5 >= 0, s5 <= s4 + 1, s6 >= 0, s6 <= s5 + 1, z' >= 0, z - 2 >= 0 plus(z, z') -{ 3 + 4*z }-> s9 :|: s7 >= 0, s7 <= z - 2 + z', s8 >= 0, s8 <= s7 + 1, s9 >= 0, s9 <= s8 + 1, z - 2 >= 0, z' >= 0 plus(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 2 }-> 0 :|: z = 1 + 0, z' >= 0 plus(z, z') -{ 1 }-> 0 :|: z - 1 >= 0, z' >= 0, v0 >= 0, 0 = v0 plus(z, z') -{ 3 }-> z' - 1 :|: z = 1 + 0, z' >= 0, z' - 1 >= 0 plus(z, z') -{ 1 }-> 1 + x0 :|: z - 1 >= 0, z' >= 0, 0 = x0, x0 >= 0 plus(z, z') -{ 2 }-> 1 + z' :|: z = 1 + 0, z' >= 0 s(z) -{ 0 }-> 0 :|: z >= 0 s(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 s(z) -{ 0 }-> 1 + z :|: z >= 0 times(z, z') -{ 10 }-> s :|: s >= 0, s <= 0 + 0, z = 1 + 0, z' = 0 times(z, z') -{ 9 }-> s' :|: s' >= 0, s' <= 0 + 0, z = 1 + 0, z' >= 0 times(z, z') -{ 9 }-> s'' :|: s'' >= 0, s'' <= 0 + 0, z - 1 >= 0, z' = 0 times(z, z') -{ 8 }-> s1 :|: s1 >= 0, s1 <= 0 + 0, z - 1 >= 0, z' >= 0 times(z, z') -{ 9 }-> s2 :|: s2 >= 0, s2 <= 0 + z', z = 1 + 0, z' >= 0 times(z, z') -{ 13 + 4*z' }-> s25 :|: s23 >= 0, s23 <= z' - 1, s24 >= 0, s24 <= s23 + 1, s25 >= 0, s25 <= 0 + s24, z' - 1 >= 0, z = 1 + 0 times(z, z') -{ 8 }-> s3 :|: s3 >= 0, s3 <= 0 + z', z - 1 >= 0, z' >= 0 times(z, z') -{ 12 + 4*z' }-> s33 :|: s31 >= 0, s31 <= z' - 1, s32 >= 0, s32 <= s31 + 1, s33 >= 0, s33 <= 0 + s32, z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 13 + 4*z' }-> s39 :|: s37 >= 0, s37 <= z' - 1, s38 >= 0, s38 <= s37 + 1, s39 >= 0, s39 <= 0 + s38, z = 1 + 0, z' - 1 >= 0 times(z, z') -{ 12 + 4*z' }-> s47 :|: s45 >= 0, s45 <= z' - 1, s46 >= 0, s46 <= s45 + 1, s47 >= 0, s47 <= 0 + s46, z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 8 + 4*z' }-> plus(plus(times(z - 2, z'), s17), 0) :|: s17 >= 0, s17 <= z', z - 2 >= 0, z' >= 0 times(z, z') -{ 8 + 4*z' }-> plus(plus(times(z - 2, z'), s18), z') :|: s18 >= 0, s18 <= z', z - 2 >= 0, z' >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), z') :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 2 }-> plus(plus(times(z - 2, z'), z'), 0) :|: z' >= 0, z - 2 >= 0 times(z, z') -{ 9 }-> plus(plus(times(z - 2, 0), s16), 0) :|: s16 >= 0, s16 <= 0, z - 2 >= 0, z' = 0 times(z, z') -{ 3 }-> plus(plus(times(z - 2, 0), 0), 0) :|: z - 2 >= 0, z' = 0 times(z, z') -{ 12 + 8*z' }-> plus(plus(times(z - 2, 1 + (z' - 1)), s26), s28) :|: s26 >= 0, s26 <= 1 + (z' - 1), s27 >= 0, s27 <= z' - 1, s28 >= 0, s28 <= s27 + 1, z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 12 + 8*z' }-> plus(plus(times(z - 2, 1 + (z' - 1)), s40), s42) :|: s40 >= 0, s40 <= 1 + (z' - 1), s41 >= 0, s41 <= z' - 1, s42 >= 0, s42 <= s41 + 1, z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ 6 + 4*z' }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), s30) :|: s29 >= 0, s29 <= z' - 1, s30 >= 0, s30 <= s29 + 1, z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 6 + 4*z' }-> plus(plus(times(z - 2, 1 + (z' - 1)), 1 + (z' - 1)), s44) :|: s43 >= 0, s43 <= z' - 1, s44 >= 0, s44 <= s43 + 1, z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 times(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encArg}, {encode_p}, {encode_*}, {encode_minus}, {encode_+}, {encode_s} Previous analysis results are: encode_0: runtime: O(1) [0], size: O(1) [0] s: runtime: O(1) [1], size: O(n^1) [1 + z] p: runtime: O(1) [1], size: O(n^1) [1 + z] plus: runtime: O(n^1) [7 + 4*z], size: O(n^1) [z + z'] minus: runtime: O(n^1) [6 + 4*z], size: O(n^1) [z] times: runtime: O(n^3) [104 + 192*z + 8*z*z' + 112*z^2*z' + 16*z'], size: O(n^2) [2*z*z' + 3*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: encArg(z) -{ 6 }-> s19 :|: s19 >= 0, s19 <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s20 :|: s20 >= 0, s20 <= 0, z - 1 >= 0 encArg(z) -{ 0 }-> times(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> s(times(encArg(x_18), encArg(x_22))) :|: z = 1 + (1 + x_18 + x_22), x_18 >= 0, x_22 >= 0 encArg(z) -{ 0 }-> s(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(plus(encArg(x_16), encArg(x_21))) :|: z = 1 + (1 + x_16 + x_21), x_16 >= 0, x_21 >= 0 encArg(z) -{ 0 }-> s(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> plus(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> p(times(encArg(x_13), encArg(x_2''))) :|: x_13 >= 0, x_2'' >= 0, z = 1 + (1 + x_13 + x_2'') encArg(z) -{ 0 }-> p(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(plus(encArg(x_11), encArg(x_2'))) :|: x_11 >= 0, x_2' >= 0, z = 1 + (1 + x_11 + x_2') encArg(z) -{ 0 }-> p(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(times(encArg(x_153), encArg(x_220))) :|: x_153 >= 0, z = 1 + (1 + x_153 + x_220), x_220 >= 0 encArg(z) -{ 0 }-> minus(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(plus(encArg(x_151), encArg(x_219))) :|: z = 1 + (1 + x_151 + x_219), x_219 >= 0, x_151 >= 0 encArg(z) -{ 0 }-> minus(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 encArg(z) -{ 0 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 encode_*(z, z') -{ 0 }-> times(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_*(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> plus(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_0 -{ 0 }-> 0 :|: encode_minus(z) -{ 6 }-> s21 :|: s21 >= 0, s21 <= 0, z = 0 encode_minus(z) -{ 6 }-> s22 :|: s22 >= 0, s22 <= 0, z >= 0 encode_minus(z) -{ 0 }-> minus(times(encArg(x_1148), encArg(x_258))) :|: x_258 >= 0, x_1148 >= 0, z = 1 + x_1148 + x_258 encode_minus(z) -{ 0 }-> minus(s(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(plus(encArg(x_1146), encArg(x_257))) :|: z = 1 + x_1146 + x_257, x_1146 >= 0, x_257 >= 0 encode_minus(z) -{ 0 }-> minus(p(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> p(times(encArg(x_198), encArg(x_238))) :|: z = 1 + x_198 + x_238, x_198 >= 0, x_238 >= 0 encode_p(z) -{ 0 }-> p(s(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(plus(encArg(x_196), encArg(x_237))) :|: x_237 >= 0, x_196 >= 0, z = 1 + x_196 + x_237 encode_p(z) -{ 0 }-> p(p(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_p(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> s(times(encArg(x_1103), encArg(x_240))) :|: z = 1 + x_1103 + x_240, x_1103 >= 0, x_240 >= 0 encode_s(z) -{ 0 }-> s(s(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(plus(encArg(x_1101), encArg(x_239))) :|: x_1101 >= 0, x_239 >= 0, z = 1 + x_1101 + x_239 encode_s(z) -{ 0 }-> s(p(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 minus(z) -{ 2 + 4*z }-> s36 :|: s34 >= 0, s34 <= z - 2, s35 >= 0, s35 <= s34 + 1, s36 >= 0, s36 <= s35 + 1, z - 2 >= 0 minus(z) -{ 2 + 4*z }-> s50 :|: s48 >= 0, s48 <= z - 2, s49 >= 0, s49 <= s48 + 1, s50 >= 0, s50 <= s49 + 1, z - 2 >= 0 minus(z) -{ 2 + 4*z }-> s53 :|: s51 >= 0, s51 <= z - 2, s52 >= 0, s52 <= s51 + 1, s53 >= 0, s53 <= s52 + 1, z - 2 >= 0 minus(z) -{ 2 + 4*z }-> s56 :|: s54 >= 0, s54 <= z - 2, s55 >= 0, s55 <= s54 + 1, s56 >= 0, s56 <= s55 + 1, z - 2 >= 0 minus(z) -{ 1 }-> 0 :|: z = 0 minus(z) -{ 0 }-> 0 :|: z >= 0 minus(z) -{ 2 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 minus(z) -{ 1 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 minus(z) -{ 2 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 minus(z) -{ 1 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 p(z) -{ 0 }-> 1 + z :|: z >= 0 plus(z, z') -{ 3 + 4*z }-> s12 :|: s10 >= 0, s10 <= z - 2 + z', s11 >= 0, s11 <= s10 + 1, s12 >= 0, s12 <= s11 + 1, z' >= 0, z - 2 >= 0 plus(z, z') -{ 3 + 4*z }-> s15 :|: s13 >= 0, s13 <= z - 2 + z', s14 >= 0, s14 <= s13 + 1, s15 >= 0, s15 <= s14 + 1, z - 2 >= 0, z' >= 0 plus(z, z') -{ 3 + 4*z }-> s6 :|: s4 >= 0, s4 <= z - 2 + z', s5 >= 0, s5 <= s4 + 1, s6 >= 0, s6 <= s5 + 1, z' >= 0, z - 2 >= 0 plus(z, z') -{ 3 + 4*z }-> s9 :|: s7 >= 0, s7 <= z - 2 + z', s8 >= 0, s8 <= s7 + 1, s9 >= 0, s9 <= s8 + 1, z - 2 >= 0, z' >= 0 plus(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 2 }-> 0 :|: z = 1 + 0, z' >= 0 plus(z, z') -{ 1 }-> 0 :|: z - 1 >= 0, z' >= 0, v0 >= 0, 0 = v0 plus(z, z') -{ 3 }-> z' - 1 :|: z = 1 + 0, z' >= 0, z' - 1 >= 0 plus(z, z') -{ 1 }-> 1 + x0 :|: z - 1 >= 0, z' >= 0, 0 = x0, x0 >= 0 plus(z, z') -{ 2 }-> 1 + z' :|: z = 1 + 0, z' >= 0 s(z) -{ 0 }-> 0 :|: z >= 0 s(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 s(z) -{ 0 }-> 1 + z :|: z >= 0 times(z, z') -{ 10 }-> s :|: s >= 0, s <= 0 + 0, z = 1 + 0, z' = 0 times(z, z') -{ 9 }-> s' :|: s' >= 0, s' <= 0 + 0, z = 1 + 0, z' >= 0 times(z, z') -{ 9 }-> s'' :|: s'' >= 0, s'' <= 0 + 0, z - 1 >= 0, z' = 0 times(z, z') -{ 8 }-> s1 :|: s1 >= 0, s1 <= 0 + 0, z - 1 >= 0, z' >= 0 times(z, z') -{ 9 }-> s2 :|: s2 >= 0, s2 <= 0 + z', z = 1 + 0, z' >= 0 times(z, z') -{ 13 + 4*z' }-> s25 :|: s23 >= 0, s23 <= z' - 1, s24 >= 0, s24 <= s23 + 1, s25 >= 0, s25 <= 0 + s24, z' - 1 >= 0, z = 1 + 0 times(z, z') -{ 8 }-> s3 :|: s3 >= 0, s3 <= 0 + z', z - 1 >= 0, z' >= 0 times(z, z') -{ 12 + 4*z' }-> s33 :|: s31 >= 0, s31 <= z' - 1, s32 >= 0, s32 <= s31 + 1, s33 >= 0, s33 <= 0 + s32, z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 13 + 4*z' }-> s39 :|: s37 >= 0, s37 <= z' - 1, s38 >= 0, s38 <= s37 + 1, s39 >= 0, s39 <= 0 + s38, z = 1 + 0, z' - 1 >= 0 times(z, z') -{ 12 + 4*z' }-> s47 :|: s45 >= 0, s45 <= z' - 1, s46 >= 0, s46 <= s45 + 1, s47 >= 0, s47 <= 0 + s46, z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ -257 + 4*s57 + 4*s58 + 192*z }-> s59 :|: s57 >= 0, s57 <= 3 * 0 + 2 * (0 * (z - 2)), s58 >= 0, s58 <= s57 + s16, s59 >= 0, s59 <= s58 + 0, s16 >= 0, s16 <= 0, z - 2 >= 0, z' = 0 times(z, z') -{ -258 + 4*s60 + 4*s61 + 192*z + -440*z*z' + 112*z^2*z' + 452*z' }-> s62 :|: s60 >= 0, s60 <= 3 * z' + 2 * (z' * (z - 2)), s61 >= 0, s61 <= s60 + s17, s62 >= 0, s62 <= s61 + 0, s17 >= 0, s17 <= z', z - 2 >= 0, z' >= 0 times(z, z') -{ -263 + 4*s63 + 4*s64 + 192*z }-> s65 :|: s63 >= 0, s63 <= 3 * 0 + 2 * (0 * (z - 2)), s64 >= 0, s64 <= s63 + 0, s65 >= 0, s65 <= s64 + 0, z - 2 >= 0, z' = 0 times(z, z') -{ -264 + 4*s66 + 4*s67 + 192*z + -440*z*z' + 112*z^2*z' + 448*z' }-> s68 :|: s66 >= 0, s66 <= 3 * z' + 2 * (z' * (z - 2)), s67 >= 0, s67 <= s66 + z', s68 >= 0, s68 <= s67 + 0, z' >= 0, z - 2 >= 0 times(z, z') -{ -258 + 4*s69 + 4*s70 + 192*z + -440*z*z' + 112*z^2*z' + 452*z' }-> s71 :|: s69 >= 0, s69 <= 3 * z' + 2 * (z' * (z - 2)), s70 >= 0, s70 <= s69 + s18, s71 >= 0, s71 <= s70 + z', s18 >= 0, s18 <= z', z - 2 >= 0, z' >= 0 times(z, z') -{ -264 + 4*s72 + 4*s73 + 192*z + -440*z*z' + 112*z^2*z' + 448*z' }-> s74 :|: s72 >= 0, s72 <= 3 * z' + 2 * (z' * (z - 2)), s73 >= 0, s73 <= s72 + z', s74 >= 0, s74 <= s73 + z', z' >= 0, z - 2 >= 0 times(z, z') -{ -254 + 4*s75 + 4*s76 + 192*z + -440*z*z' + 112*z^2*z' + 456*z' }-> s77 :|: s75 >= 0, s75 <= 3 * (1 + (z' - 1)) + 2 * ((1 + (z' - 1)) * (z - 2)), s76 >= 0, s76 <= s75 + s26, s77 >= 0, s77 <= s76 + s28, s26 >= 0, s26 <= 1 + (z' - 1), s27 >= 0, s27 <= z' - 1, s28 >= 0, s28 <= s27 + 1, z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ -260 + 4*s78 + 4*s79 + 192*z + -440*z*z' + 112*z^2*z' + 452*z' }-> s80 :|: s78 >= 0, s78 <= 3 * (1 + (z' - 1)) + 2 * ((1 + (z' - 1)) * (z - 2)), s79 >= 0, s79 <= s78 + (1 + (z' - 1)), s80 >= 0, s80 <= s79 + s30, s29 >= 0, s29 <= z' - 1, s30 >= 0, s30 <= s29 + 1, z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ -254 + 4*s81 + 4*s82 + 192*z + -440*z*z' + 112*z^2*z' + 456*z' }-> s83 :|: s81 >= 0, s81 <= 3 * (1 + (z' - 1)) + 2 * ((1 + (z' - 1)) * (z - 2)), s82 >= 0, s82 <= s81 + s40, s83 >= 0, s83 <= s82 + s42, s40 >= 0, s40 <= 1 + (z' - 1), s41 >= 0, s41 <= z' - 1, s42 >= 0, s42 <= s41 + 1, z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ -260 + 4*s84 + 4*s85 + 192*z + -440*z*z' + 112*z^2*z' + 452*z' }-> s86 :|: s84 >= 0, s84 <= 3 * (1 + (z' - 1)) + 2 * ((1 + (z' - 1)) * (z - 2)), s85 >= 0, s85 <= s84 + (1 + (z' - 1)), s86 >= 0, s86 <= s85 + s44, s43 >= 0, s43 <= z' - 1, s44 >= 0, s44 <= s43 + 1, z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 times(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encArg}, {encode_p}, {encode_*}, {encode_minus}, {encode_+}, {encode_s} Previous analysis results are: encode_0: runtime: O(1) [0], size: O(1) [0] s: runtime: O(1) [1], size: O(n^1) [1 + z] p: runtime: O(1) [1], size: O(n^1) [1 + z] plus: runtime: O(n^1) [7 + 4*z], size: O(n^1) [z + z'] minus: runtime: O(n^1) [6 + 4*z], size: O(n^1) [z] times: runtime: O(n^3) [104 + 192*z + 8*z*z' + 112*z^2*z' + 16*z'], size: O(n^2) [2*z*z' + 3*z'] ---------------------------------------- (79) IntTrsBoundProof (UPPER BOUND(ID)) ---------------------------------------- (80) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 6 }-> s19 :|: s19 >= 0, s19 <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s20 :|: s20 >= 0, s20 <= 0, z - 1 >= 0 encArg(z) -{ 0 }-> times(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> s(times(encArg(x_18), encArg(x_22))) :|: z = 1 + (1 + x_18 + x_22), x_18 >= 0, x_22 >= 0 encArg(z) -{ 0 }-> s(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(plus(encArg(x_16), encArg(x_21))) :|: z = 1 + (1 + x_16 + x_21), x_16 >= 0, x_21 >= 0 encArg(z) -{ 0 }-> s(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> plus(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> p(times(encArg(x_13), encArg(x_2''))) :|: x_13 >= 0, x_2'' >= 0, z = 1 + (1 + x_13 + x_2'') encArg(z) -{ 0 }-> p(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(plus(encArg(x_11), encArg(x_2'))) :|: x_11 >= 0, x_2' >= 0, z = 1 + (1 + x_11 + x_2') encArg(z) -{ 0 }-> p(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(times(encArg(x_153), encArg(x_220))) :|: x_153 >= 0, z = 1 + (1 + x_153 + x_220), x_220 >= 0 encArg(z) -{ 0 }-> minus(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(plus(encArg(x_151), encArg(x_219))) :|: z = 1 + (1 + x_151 + x_219), x_219 >= 0, x_151 >= 0 encArg(z) -{ 0 }-> minus(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 encArg(z) -{ 0 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 encode_*(z, z') -{ 0 }-> times(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_*(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> plus(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_0 -{ 0 }-> 0 :|: encode_minus(z) -{ 6 }-> s21 :|: s21 >= 0, s21 <= 0, z = 0 encode_minus(z) -{ 6 }-> s22 :|: s22 >= 0, s22 <= 0, z >= 0 encode_minus(z) -{ 0 }-> minus(times(encArg(x_1148), encArg(x_258))) :|: x_258 >= 0, x_1148 >= 0, z = 1 + x_1148 + x_258 encode_minus(z) -{ 0 }-> minus(s(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(plus(encArg(x_1146), encArg(x_257))) :|: z = 1 + x_1146 + x_257, x_1146 >= 0, x_257 >= 0 encode_minus(z) -{ 0 }-> minus(p(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> p(times(encArg(x_198), encArg(x_238))) :|: z = 1 + x_198 + x_238, x_198 >= 0, x_238 >= 0 encode_p(z) -{ 0 }-> p(s(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(plus(encArg(x_196), encArg(x_237))) :|: x_237 >= 0, x_196 >= 0, z = 1 + x_196 + x_237 encode_p(z) -{ 0 }-> p(p(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_p(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> s(times(encArg(x_1103), encArg(x_240))) :|: z = 1 + x_1103 + x_240, x_1103 >= 0, x_240 >= 0 encode_s(z) -{ 0 }-> s(s(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(plus(encArg(x_1101), encArg(x_239))) :|: x_1101 >= 0, x_239 >= 0, z = 1 + x_1101 + x_239 encode_s(z) -{ 0 }-> s(p(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 minus(z) -{ 2 + 4*z }-> s36 :|: s34 >= 0, s34 <= z - 2, s35 >= 0, s35 <= s34 + 1, s36 >= 0, s36 <= s35 + 1, z - 2 >= 0 minus(z) -{ 2 + 4*z }-> s50 :|: s48 >= 0, s48 <= z - 2, s49 >= 0, s49 <= s48 + 1, s50 >= 0, s50 <= s49 + 1, z - 2 >= 0 minus(z) -{ 2 + 4*z }-> s53 :|: s51 >= 0, s51 <= z - 2, s52 >= 0, s52 <= s51 + 1, s53 >= 0, s53 <= s52 + 1, z - 2 >= 0 minus(z) -{ 2 + 4*z }-> s56 :|: s54 >= 0, s54 <= z - 2, s55 >= 0, s55 <= s54 + 1, s56 >= 0, s56 <= s55 + 1, z - 2 >= 0 minus(z) -{ 1 }-> 0 :|: z = 0 minus(z) -{ 0 }-> 0 :|: z >= 0 minus(z) -{ 2 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 minus(z) -{ 1 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 minus(z) -{ 2 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 minus(z) -{ 1 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 p(z) -{ 0 }-> 1 + z :|: z >= 0 plus(z, z') -{ 3 + 4*z }-> s12 :|: s10 >= 0, s10 <= z - 2 + z', s11 >= 0, s11 <= s10 + 1, s12 >= 0, s12 <= s11 + 1, z' >= 0, z - 2 >= 0 plus(z, z') -{ 3 + 4*z }-> s15 :|: s13 >= 0, s13 <= z - 2 + z', s14 >= 0, s14 <= s13 + 1, s15 >= 0, s15 <= s14 + 1, z - 2 >= 0, z' >= 0 plus(z, z') -{ 3 + 4*z }-> s6 :|: s4 >= 0, s4 <= z - 2 + z', s5 >= 0, s5 <= s4 + 1, s6 >= 0, s6 <= s5 + 1, z' >= 0, z - 2 >= 0 plus(z, z') -{ 3 + 4*z }-> s9 :|: s7 >= 0, s7 <= z - 2 + z', s8 >= 0, s8 <= s7 + 1, s9 >= 0, s9 <= s8 + 1, z - 2 >= 0, z' >= 0 plus(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 2 }-> 0 :|: z = 1 + 0, z' >= 0 plus(z, z') -{ 1 }-> 0 :|: z - 1 >= 0, z' >= 0, v0 >= 0, 0 = v0 plus(z, z') -{ 3 }-> z' - 1 :|: z = 1 + 0, z' >= 0, z' - 1 >= 0 plus(z, z') -{ 1 }-> 1 + x0 :|: z - 1 >= 0, z' >= 0, 0 = x0, x0 >= 0 plus(z, z') -{ 2 }-> 1 + z' :|: z = 1 + 0, z' >= 0 s(z) -{ 0 }-> 0 :|: z >= 0 s(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 s(z) -{ 0 }-> 1 + z :|: z >= 0 times(z, z') -{ 10 }-> s :|: s >= 0, s <= 0 + 0, z = 1 + 0, z' = 0 times(z, z') -{ 9 }-> s' :|: s' >= 0, s' <= 0 + 0, z = 1 + 0, z' >= 0 times(z, z') -{ 9 }-> s'' :|: s'' >= 0, s'' <= 0 + 0, z - 1 >= 0, z' = 0 times(z, z') -{ 8 }-> s1 :|: s1 >= 0, s1 <= 0 + 0, z - 1 >= 0, z' >= 0 times(z, z') -{ 9 }-> s2 :|: s2 >= 0, s2 <= 0 + z', z = 1 + 0, z' >= 0 times(z, z') -{ 13 + 4*z' }-> s25 :|: s23 >= 0, s23 <= z' - 1, s24 >= 0, s24 <= s23 + 1, s25 >= 0, s25 <= 0 + s24, z' - 1 >= 0, z = 1 + 0 times(z, z') -{ 8 }-> s3 :|: s3 >= 0, s3 <= 0 + z', z - 1 >= 0, z' >= 0 times(z, z') -{ 12 + 4*z' }-> s33 :|: s31 >= 0, s31 <= z' - 1, s32 >= 0, s32 <= s31 + 1, s33 >= 0, s33 <= 0 + s32, z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 13 + 4*z' }-> s39 :|: s37 >= 0, s37 <= z' - 1, s38 >= 0, s38 <= s37 + 1, s39 >= 0, s39 <= 0 + s38, z = 1 + 0, z' - 1 >= 0 times(z, z') -{ 12 + 4*z' }-> s47 :|: s45 >= 0, s45 <= z' - 1, s46 >= 0, s46 <= s45 + 1, s47 >= 0, s47 <= 0 + s46, z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ -257 + 4*s57 + 4*s58 + 192*z }-> s59 :|: s57 >= 0, s57 <= 3 * 0 + 2 * (0 * (z - 2)), s58 >= 0, s58 <= s57 + s16, s59 >= 0, s59 <= s58 + 0, s16 >= 0, s16 <= 0, z - 2 >= 0, z' = 0 times(z, z') -{ -258 + 4*s60 + 4*s61 + 192*z + -440*z*z' + 112*z^2*z' + 452*z' }-> s62 :|: s60 >= 0, s60 <= 3 * z' + 2 * (z' * (z - 2)), s61 >= 0, s61 <= s60 + s17, s62 >= 0, s62 <= s61 + 0, s17 >= 0, s17 <= z', z - 2 >= 0, z' >= 0 times(z, z') -{ -263 + 4*s63 + 4*s64 + 192*z }-> s65 :|: s63 >= 0, s63 <= 3 * 0 + 2 * (0 * (z - 2)), s64 >= 0, s64 <= s63 + 0, s65 >= 0, s65 <= s64 + 0, z - 2 >= 0, z' = 0 times(z, z') -{ -264 + 4*s66 + 4*s67 + 192*z + -440*z*z' + 112*z^2*z' + 448*z' }-> s68 :|: s66 >= 0, s66 <= 3 * z' + 2 * (z' * (z - 2)), s67 >= 0, s67 <= s66 + z', s68 >= 0, s68 <= s67 + 0, z' >= 0, z - 2 >= 0 times(z, z') -{ -258 + 4*s69 + 4*s70 + 192*z + -440*z*z' + 112*z^2*z' + 452*z' }-> s71 :|: s69 >= 0, s69 <= 3 * z' + 2 * (z' * (z - 2)), s70 >= 0, s70 <= s69 + s18, s71 >= 0, s71 <= s70 + z', s18 >= 0, s18 <= z', z - 2 >= 0, z' >= 0 times(z, z') -{ -264 + 4*s72 + 4*s73 + 192*z + -440*z*z' + 112*z^2*z' + 448*z' }-> s74 :|: s72 >= 0, s72 <= 3 * z' + 2 * (z' * (z - 2)), s73 >= 0, s73 <= s72 + z', s74 >= 0, s74 <= s73 + z', z' >= 0, z - 2 >= 0 times(z, z') -{ -254 + 4*s75 + 4*s76 + 192*z + -440*z*z' + 112*z^2*z' + 456*z' }-> s77 :|: s75 >= 0, s75 <= 3 * (1 + (z' - 1)) + 2 * ((1 + (z' - 1)) * (z - 2)), s76 >= 0, s76 <= s75 + s26, s77 >= 0, s77 <= s76 + s28, s26 >= 0, s26 <= 1 + (z' - 1), s27 >= 0, s27 <= z' - 1, s28 >= 0, s28 <= s27 + 1, z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ -260 + 4*s78 + 4*s79 + 192*z + -440*z*z' + 112*z^2*z' + 452*z' }-> s80 :|: s78 >= 0, s78 <= 3 * (1 + (z' - 1)) + 2 * ((1 + (z' - 1)) * (z - 2)), s79 >= 0, s79 <= s78 + (1 + (z' - 1)), s80 >= 0, s80 <= s79 + s30, s29 >= 0, s29 <= z' - 1, s30 >= 0, s30 <= s29 + 1, z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ -254 + 4*s81 + 4*s82 + 192*z + -440*z*z' + 112*z^2*z' + 456*z' }-> s83 :|: s81 >= 0, s81 <= 3 * (1 + (z' - 1)) + 2 * ((1 + (z' - 1)) * (z - 2)), s82 >= 0, s82 <= s81 + s40, s83 >= 0, s83 <= s82 + s42, s40 >= 0, s40 <= 1 + (z' - 1), s41 >= 0, s41 <= z' - 1, s42 >= 0, s42 <= s41 + 1, z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ -260 + 4*s84 + 4*s85 + 192*z + -440*z*z' + 112*z^2*z' + 452*z' }-> s86 :|: s84 >= 0, s84 <= 3 * (1 + (z' - 1)) + 2 * ((1 + (z' - 1)) * (z - 2)), s85 >= 0, s85 <= s84 + (1 + (z' - 1)), s86 >= 0, s86 <= s85 + s44, s43 >= 0, s43 <= z' - 1, s44 >= 0, s44 <= s43 + 1, z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 times(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encArg}, {encode_p}, {encode_*}, {encode_minus}, {encode_+}, {encode_s} Previous analysis results are: encode_0: runtime: O(1) [0], size: O(1) [0] s: runtime: O(1) [1], size: O(n^1) [1 + z] p: runtime: O(1) [1], size: O(n^1) [1 + z] plus: runtime: O(n^1) [7 + 4*z], size: O(n^1) [z + z'] minus: runtime: O(n^1) [6 + 4*z], size: O(n^1) [z] times: runtime: O(n^3) [104 + 192*z + 8*z*z' + 112*z^2*z' + 16*z'], size: O(n^2) [2*z*z' + 3*z'] encArg: runtime: ?, size: INF ---------------------------------------- (81) IntTrsBoundProof (UPPER BOUND(ID)) Computed RUNTIME bound using CoFloCo for: encArg after applying outer abstraction to obtain an ITS, resulting in: INF with polynomial bound: ? ---------------------------------------- (82) Obligation: Complexity RNTS consisting of the following rules: encArg(z) -{ 6 }-> s19 :|: s19 >= 0, s19 <= 0, z = 1 + 0 encArg(z) -{ 6 }-> s20 :|: s20 >= 0, s20 <= 0, z - 1 >= 0 encArg(z) -{ 0 }-> times(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> s(times(encArg(x_18), encArg(x_22))) :|: z = 1 + (1 + x_18 + x_22), x_18 >= 0, x_22 >= 0 encArg(z) -{ 0 }-> s(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(plus(encArg(x_16), encArg(x_21))) :|: z = 1 + (1 + x_16 + x_21), x_16 >= 0, x_21 >= 0 encArg(z) -{ 0 }-> s(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> s(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> plus(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> p(times(encArg(x_13), encArg(x_2''))) :|: x_13 >= 0, x_2'' >= 0, z = 1 + (1 + x_13 + x_2'') encArg(z) -{ 0 }-> p(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(plus(encArg(x_11), encArg(x_2'))) :|: x_11 >= 0, x_2' >= 0, z = 1 + (1 + x_11 + x_2') encArg(z) -{ 0 }-> p(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> p(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(times(encArg(x_153), encArg(x_220))) :|: x_153 >= 0, z = 1 + (1 + x_153 + x_220), x_220 >= 0 encArg(z) -{ 0 }-> minus(s(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(plus(encArg(x_151), encArg(x_219))) :|: z = 1 + (1 + x_151 + x_219), x_219 >= 0, x_151 >= 0 encArg(z) -{ 0 }-> minus(p(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> minus(minus(encArg(z - 2))) :|: z - 2 >= 0 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: z >= 0 encArg(z) -{ 0 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 encArg(z) -{ 0 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 encArg(z) -{ 0 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 encode_*(z, z') -{ 0 }-> times(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_*(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> plus(encArg(z), encArg(z')) :|: z >= 0, z' >= 0 encode_+(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 encode_0 -{ 0 }-> 0 :|: encode_minus(z) -{ 6 }-> s21 :|: s21 >= 0, s21 <= 0, z = 0 encode_minus(z) -{ 6 }-> s22 :|: s22 >= 0, s22 <= 0, z >= 0 encode_minus(z) -{ 0 }-> minus(times(encArg(x_1148), encArg(x_258))) :|: x_258 >= 0, x_1148 >= 0, z = 1 + x_1148 + x_258 encode_minus(z) -{ 0 }-> minus(s(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(plus(encArg(x_1146), encArg(x_257))) :|: z = 1 + x_1146 + x_257, x_1146 >= 0, x_257 >= 0 encode_minus(z) -{ 0 }-> minus(p(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> minus(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_minus(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> p(times(encArg(x_198), encArg(x_238))) :|: z = 1 + x_198 + x_238, x_198 >= 0, x_238 >= 0 encode_p(z) -{ 0 }-> p(s(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(plus(encArg(x_196), encArg(x_237))) :|: x_237 >= 0, x_196 >= 0, z = 1 + x_196 + x_237 encode_p(z) -{ 0 }-> p(p(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> p(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_p(z) -{ 0 }-> 0 :|: z >= 0 encode_p(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_p(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_p(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> s(times(encArg(x_1103), encArg(x_240))) :|: z = 1 + x_1103 + x_240, x_1103 >= 0, x_240 >= 0 encode_s(z) -{ 0 }-> s(s(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(plus(encArg(x_1101), encArg(x_239))) :|: x_1101 >= 0, x_239 >= 0, z = 1 + x_1101 + x_239 encode_s(z) -{ 0 }-> s(p(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> s(minus(encArg(z - 1))) :|: z - 1 >= 0 encode_s(z) -{ 0 }-> 0 :|: z >= 0 encode_s(z) -{ 0 }-> 0 :|: z = 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 0 :|: z >= 0, v0 >= 0, 0 = v0 encode_s(z) -{ 0 }-> 1 + x0 :|: z = 0, 0 = x0, x0 >= 0 encode_s(z) -{ 0 }-> 1 + x0 :|: z >= 0, 0 = x0, x0 >= 0 minus(z) -{ 2 + 4*z }-> s36 :|: s34 >= 0, s34 <= z - 2, s35 >= 0, s35 <= s34 + 1, s36 >= 0, s36 <= s35 + 1, z - 2 >= 0 minus(z) -{ 2 + 4*z }-> s50 :|: s48 >= 0, s48 <= z - 2, s49 >= 0, s49 <= s48 + 1, s50 >= 0, s50 <= s49 + 1, z - 2 >= 0 minus(z) -{ 2 + 4*z }-> s53 :|: s51 >= 0, s51 <= z - 2, s52 >= 0, s52 <= s51 + 1, s53 >= 0, s53 <= s52 + 1, z - 2 >= 0 minus(z) -{ 2 + 4*z }-> s56 :|: s54 >= 0, s54 <= z - 2, s55 >= 0, s55 <= s54 + 1, s56 >= 0, s56 <= s55 + 1, z - 2 >= 0 minus(z) -{ 1 }-> 0 :|: z = 0 minus(z) -{ 0 }-> 0 :|: z >= 0 minus(z) -{ 2 }-> 0 :|: z = 1 + 0, v0 >= 0, 0 = v0 minus(z) -{ 1 }-> 0 :|: z - 1 >= 0, v0 >= 0, 0 = v0 minus(z) -{ 2 }-> 1 + x0 :|: z = 1 + 0, 0 = x0, x0 >= 0 minus(z) -{ 1 }-> 1 + x0 :|: z - 1 >= 0, 0 = x0, x0 >= 0 p(z) -{ 0 }-> 0 :|: z >= 0 p(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 p(z) -{ 0 }-> 1 + z :|: z >= 0 plus(z, z') -{ 3 + 4*z }-> s12 :|: s10 >= 0, s10 <= z - 2 + z', s11 >= 0, s11 <= s10 + 1, s12 >= 0, s12 <= s11 + 1, z' >= 0, z - 2 >= 0 plus(z, z') -{ 3 + 4*z }-> s15 :|: s13 >= 0, s13 <= z - 2 + z', s14 >= 0, s14 <= s13 + 1, s15 >= 0, s15 <= s14 + 1, z - 2 >= 0, z' >= 0 plus(z, z') -{ 3 + 4*z }-> s6 :|: s4 >= 0, s4 <= z - 2 + z', s5 >= 0, s5 <= s4 + 1, s6 >= 0, s6 <= s5 + 1, z' >= 0, z - 2 >= 0 plus(z, z') -{ 3 + 4*z }-> s9 :|: s7 >= 0, s7 <= z - 2 + z', s8 >= 0, s8 <= s7 + 1, s9 >= 0, s9 <= s8 + 1, z - 2 >= 0, z' >= 0 plus(z, z') -{ 1 }-> z' :|: z' >= 0, z = 0 plus(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 plus(z, z') -{ 2 }-> 0 :|: z = 1 + 0, z' >= 0 plus(z, z') -{ 1 }-> 0 :|: z - 1 >= 0, z' >= 0, v0 >= 0, 0 = v0 plus(z, z') -{ 3 }-> z' - 1 :|: z = 1 + 0, z' >= 0, z' - 1 >= 0 plus(z, z') -{ 1 }-> 1 + x0 :|: z - 1 >= 0, z' >= 0, 0 = x0, x0 >= 0 plus(z, z') -{ 2 }-> 1 + z' :|: z = 1 + 0, z' >= 0 s(z) -{ 0 }-> 0 :|: z >= 0 s(z) -{ 1 }-> z - 1 :|: z - 1 >= 0 s(z) -{ 0 }-> 1 + z :|: z >= 0 times(z, z') -{ 10 }-> s :|: s >= 0, s <= 0 + 0, z = 1 + 0, z' = 0 times(z, z') -{ 9 }-> s' :|: s' >= 0, s' <= 0 + 0, z = 1 + 0, z' >= 0 times(z, z') -{ 9 }-> s'' :|: s'' >= 0, s'' <= 0 + 0, z - 1 >= 0, z' = 0 times(z, z') -{ 8 }-> s1 :|: s1 >= 0, s1 <= 0 + 0, z - 1 >= 0, z' >= 0 times(z, z') -{ 9 }-> s2 :|: s2 >= 0, s2 <= 0 + z', z = 1 + 0, z' >= 0 times(z, z') -{ 13 + 4*z' }-> s25 :|: s23 >= 0, s23 <= z' - 1, s24 >= 0, s24 <= s23 + 1, s25 >= 0, s25 <= 0 + s24, z' - 1 >= 0, z = 1 + 0 times(z, z') -{ 8 }-> s3 :|: s3 >= 0, s3 <= 0 + z', z - 1 >= 0, z' >= 0 times(z, z') -{ 12 + 4*z' }-> s33 :|: s31 >= 0, s31 <= z' - 1, s32 >= 0, s32 <= s31 + 1, s33 >= 0, s33 <= 0 + s32, z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ 13 + 4*z' }-> s39 :|: s37 >= 0, s37 <= z' - 1, s38 >= 0, s38 <= s37 + 1, s39 >= 0, s39 <= 0 + s38, z = 1 + 0, z' - 1 >= 0 times(z, z') -{ 12 + 4*z' }-> s47 :|: s45 >= 0, s45 <= z' - 1, s46 >= 0, s46 <= s45 + 1, s47 >= 0, s47 <= 0 + s46, z - 1 >= 0, z' - 1 >= 0 times(z, z') -{ -257 + 4*s57 + 4*s58 + 192*z }-> s59 :|: s57 >= 0, s57 <= 3 * 0 + 2 * (0 * (z - 2)), s58 >= 0, s58 <= s57 + s16, s59 >= 0, s59 <= s58 + 0, s16 >= 0, s16 <= 0, z - 2 >= 0, z' = 0 times(z, z') -{ -258 + 4*s60 + 4*s61 + 192*z + -440*z*z' + 112*z^2*z' + 452*z' }-> s62 :|: s60 >= 0, s60 <= 3 * z' + 2 * (z' * (z - 2)), s61 >= 0, s61 <= s60 + s17, s62 >= 0, s62 <= s61 + 0, s17 >= 0, s17 <= z', z - 2 >= 0, z' >= 0 times(z, z') -{ -263 + 4*s63 + 4*s64 + 192*z }-> s65 :|: s63 >= 0, s63 <= 3 * 0 + 2 * (0 * (z - 2)), s64 >= 0, s64 <= s63 + 0, s65 >= 0, s65 <= s64 + 0, z - 2 >= 0, z' = 0 times(z, z') -{ -264 + 4*s66 + 4*s67 + 192*z + -440*z*z' + 112*z^2*z' + 448*z' }-> s68 :|: s66 >= 0, s66 <= 3 * z' + 2 * (z' * (z - 2)), s67 >= 0, s67 <= s66 + z', s68 >= 0, s68 <= s67 + 0, z' >= 0, z - 2 >= 0 times(z, z') -{ -258 + 4*s69 + 4*s70 + 192*z + -440*z*z' + 112*z^2*z' + 452*z' }-> s71 :|: s69 >= 0, s69 <= 3 * z' + 2 * (z' * (z - 2)), s70 >= 0, s70 <= s69 + s18, s71 >= 0, s71 <= s70 + z', s18 >= 0, s18 <= z', z - 2 >= 0, z' >= 0 times(z, z') -{ -264 + 4*s72 + 4*s73 + 192*z + -440*z*z' + 112*z^2*z' + 448*z' }-> s74 :|: s72 >= 0, s72 <= 3 * z' + 2 * (z' * (z - 2)), s73 >= 0, s73 <= s72 + z', s74 >= 0, s74 <= s73 + z', z' >= 0, z - 2 >= 0 times(z, z') -{ -254 + 4*s75 + 4*s76 + 192*z + -440*z*z' + 112*z^2*z' + 456*z' }-> s77 :|: s75 >= 0, s75 <= 3 * (1 + (z' - 1)) + 2 * ((1 + (z' - 1)) * (z - 2)), s76 >= 0, s76 <= s75 + s26, s77 >= 0, s77 <= s76 + s28, s26 >= 0, s26 <= 1 + (z' - 1), s27 >= 0, s27 <= z' - 1, s28 >= 0, s28 <= s27 + 1, z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ -260 + 4*s78 + 4*s79 + 192*z + -440*z*z' + 112*z^2*z' + 452*z' }-> s80 :|: s78 >= 0, s78 <= 3 * (1 + (z' - 1)) + 2 * ((1 + (z' - 1)) * (z - 2)), s79 >= 0, s79 <= s78 + (1 + (z' - 1)), s80 >= 0, s80 <= s79 + s30, s29 >= 0, s29 <= z' - 1, s30 >= 0, s30 <= s29 + 1, z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ -254 + 4*s81 + 4*s82 + 192*z + -440*z*z' + 112*z^2*z' + 456*z' }-> s83 :|: s81 >= 0, s81 <= 3 * (1 + (z' - 1)) + 2 * ((1 + (z' - 1)) * (z - 2)), s82 >= 0, s82 <= s81 + s40, s83 >= 0, s83 <= s82 + s42, s40 >= 0, s40 <= 1 + (z' - 1), s41 >= 0, s41 <= z' - 1, s42 >= 0, s42 <= s41 + 1, z - 2 >= 0, z' - 1 >= 0 times(z, z') -{ -260 + 4*s84 + 4*s85 + 192*z + -440*z*z' + 112*z^2*z' + 452*z' }-> s86 :|: s84 >= 0, s84 <= 3 * (1 + (z' - 1)) + 2 * ((1 + (z' - 1)) * (z - 2)), s85 >= 0, s85 <= s84 + (1 + (z' - 1)), s86 >= 0, s86 <= s85 + s44, s43 >= 0, s43 <= z' - 1, s44 >= 0, s44 <= s43 + 1, z' - 1 >= 0, z - 2 >= 0 times(z, z') -{ 1 }-> 0 :|: z' >= 0, z = 0 times(z, z') -{ 0 }-> 0 :|: z >= 0, z' >= 0 Function symbols to be analyzed: {encArg}, {encode_p}, {encode_*}, {encode_minus}, {encode_+}, {encode_s} Previous analysis results are: encode_0: runtime: O(1) [0], size: O(1) [0] s: runtime: O(1) [1], size: O(n^1) [1 + z] p: runtime: O(1) [1], size: O(n^1) [1 + z] plus: runtime: O(n^1) [7 + 4*z], size: O(n^1) [z + z'] minus: runtime: O(n^1) [6 + 4*z], size: O(n^1) [z] times: runtime: O(n^3) [104 + 192*z + 8*z*z' + 112*z^2*z' + 16*z'], size: O(n^2) [2*z*z' + 3*z'] encArg: runtime: INF, size: INF ---------------------------------------- (83) CpxTrsToCdtProof (UPPER BOUND(ID)) Converted Cpx (relative) TRS to CDT ---------------------------------------- (84) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) encode_p(z0) -> p(encArg(z0)) encode_s(z0) -> s(encArg(z0)) encode_+(z0, z1) -> +(encArg(z0), encArg(z1)) encode_0 -> 0 encode_minus(z0) -> minus(encArg(z0)) encode_*(z0, z1) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: ENCARG(0) -> c ENCARG(cons_p(z0)) -> c1(P(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c2(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_+(z0, z1)) -> c3(+'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_minus(z0)) -> c4(MINUS(encArg(z0)), ENCARG(z0)) ENCARG(cons_*(z0, z1)) -> c5(*'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_P(z0) -> c6(P(encArg(z0)), ENCARG(z0)) ENCODE_S(z0) -> c7(S(encArg(z0)), ENCARG(z0)) ENCODE_+(z0, z1) -> c8(+'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_0 -> c9 ENCODE_MINUS(z0) -> c10(MINUS(encArg(z0)), ENCARG(z0)) ENCODE_*(z0, z1) -> c11(*'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(0, z0) -> c20 *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(0, z0) -> c20 *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) K tuples:none Defined Rule Symbols: p_1, s_1, +_2, minus_1, *_2, encArg_1, encode_p_1, encode_s_1, encode_+_2, encode_0, encode_minus_1, encode_*_2 Defined Pair Symbols: ENCARG_1, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_0, ENCODE_MINUS_1, ENCODE_*_2, P_1, S_1, +'_2, MINUS_1, *'_2 Compound Symbols: c, c1_2, c2_2, c3_3, c4_2, c5_3, c6_2, c7_2, c8_3, c9, c10_2, c11_3, c12, c13, c14, c15_2, c16_2, c17, c18_2, c19_2, c20, c21_2, c22_3 ---------------------------------------- (85) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: ENCODE_0 -> c9 ENCARG(0) -> c ---------------------------------------- (86) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) encode_p(z0) -> p(encArg(z0)) encode_s(z0) -> s(encArg(z0)) encode_+(z0, z1) -> +(encArg(z0), encArg(z1)) encode_0 -> 0 encode_minus(z0) -> minus(encArg(z0)) encode_*(z0, z1) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: ENCARG(cons_p(z0)) -> c1(P(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c2(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_+(z0, z1)) -> c3(+'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_minus(z0)) -> c4(MINUS(encArg(z0)), ENCARG(z0)) ENCARG(cons_*(z0, z1)) -> c5(*'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_P(z0) -> c6(P(encArg(z0)), ENCARG(z0)) ENCODE_S(z0) -> c7(S(encArg(z0)), ENCARG(z0)) ENCODE_+(z0, z1) -> c8(+'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_MINUS(z0) -> c10(MINUS(encArg(z0)), ENCARG(z0)) ENCODE_*(z0, z1) -> c11(*'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(0, z0) -> c20 *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(0, z0) -> c20 *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) K tuples:none Defined Rule Symbols: p_1, s_1, +_2, minus_1, *_2, encArg_1, encode_p_1, encode_s_1, encode_+_2, encode_0, encode_minus_1, encode_*_2 Defined Pair Symbols: ENCARG_1, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2, P_1, S_1, +'_2, MINUS_1, *'_2 Compound Symbols: c1_2, c2_2, c3_3, c4_2, c5_3, c6_2, c7_2, c8_3, c10_2, c11_3, c12, c13, c14, c15_2, c16_2, c17, c18_2, c19_2, c20, c21_2, c22_3 ---------------------------------------- (87) CdtGraphSplitRhsProof (BOTH BOUNDS(ID, ID)) Split RHS of tuples not part of any SCC ---------------------------------------- (88) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) encode_p(z0) -> p(encArg(z0)) encode_s(z0) -> s(encArg(z0)) encode_+(z0, z1) -> +(encArg(z0), encArg(z1)) encode_0 -> 0 encode_minus(z0) -> minus(encArg(z0)) encode_*(z0, z1) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: ENCARG(cons_p(z0)) -> c1(P(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c2(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_+(z0, z1)) -> c3(+'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_minus(z0)) -> c4(MINUS(encArg(z0)), ENCARG(z0)) ENCARG(cons_*(z0, z1)) -> c5(*'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(0, z0) -> c20 *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_P(z0) -> c(ENCARG(z0)) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_S(z0) -> c(ENCARG(z0)) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_+(z0, z1) -> c(ENCARG(z0)) ENCODE_+(z0, z1) -> c(ENCARG(z1)) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_MINUS(z0) -> c(ENCARG(z0)) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCODE_*(z0, z1) -> c(ENCARG(z0)) ENCODE_*(z0, z1) -> c(ENCARG(z1)) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(0, z0) -> c20 *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) K tuples:none Defined Rule Symbols: p_1, s_1, +_2, minus_1, *_2, encArg_1, encode_p_1, encode_s_1, encode_+_2, encode_0, encode_minus_1, encode_*_2 Defined Pair Symbols: ENCARG_1, P_1, S_1, +'_2, MINUS_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c1_2, c2_2, c3_3, c4_2, c5_3, c12, c13, c14, c15_2, c16_2, c17, c18_2, c19_2, c20, c21_2, c22_3, c_1 ---------------------------------------- (89) CdtLeafRemovalProof (ComplexityIfPolyImplication) Removed 7 leading nodes: ENCODE_P(z0) -> c(ENCARG(z0)) ENCODE_S(z0) -> c(ENCARG(z0)) ENCODE_+(z0, z1) -> c(ENCARG(z0)) ENCODE_+(z0, z1) -> c(ENCARG(z1)) ENCODE_MINUS(z0) -> c(ENCARG(z0)) ENCODE_*(z0, z1) -> c(ENCARG(z0)) ENCODE_*(z0, z1) -> c(ENCARG(z1)) ---------------------------------------- (90) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) encode_p(z0) -> p(encArg(z0)) encode_s(z0) -> s(encArg(z0)) encode_+(z0, z1) -> +(encArg(z0), encArg(z1)) encode_0 -> 0 encode_minus(z0) -> minus(encArg(z0)) encode_*(z0, z1) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: ENCARG(cons_p(z0)) -> c1(P(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c2(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_+(z0, z1)) -> c3(+'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_minus(z0)) -> c4(MINUS(encArg(z0)), ENCARG(z0)) ENCARG(cons_*(z0, z1)) -> c5(*'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(0, z0) -> c20 *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(0, z0) -> c20 *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) K tuples:none Defined Rule Symbols: p_1, s_1, +_2, minus_1, *_2, encArg_1, encode_p_1, encode_s_1, encode_+_2, encode_0, encode_minus_1, encode_*_2 Defined Pair Symbols: ENCARG_1, P_1, S_1, +'_2, MINUS_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c1_2, c2_2, c3_3, c4_2, c5_3, c12, c13, c14, c15_2, c16_2, c17, c18_2, c19_2, c20, c21_2, c22_3, c_1 ---------------------------------------- (91) CdtUsableRulesProof (BOTH BOUNDS(ID, ID)) The following rules are not usable and were removed: encode_p(z0) -> p(encArg(z0)) encode_s(z0) -> s(encArg(z0)) encode_+(z0, z1) -> +(encArg(z0), encArg(z1)) encode_0 -> 0 encode_minus(z0) -> minus(encArg(z0)) encode_*(z0, z1) -> *(encArg(z0), encArg(z1)) ---------------------------------------- (92) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: ENCARG(cons_p(z0)) -> c1(P(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c2(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_+(z0, z1)) -> c3(+'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_minus(z0)) -> c4(MINUS(encArg(z0)), ENCARG(z0)) ENCARG(cons_*(z0, z1)) -> c5(*'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(0, z0) -> c20 *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(0, z0) -> c20 *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) K tuples:none Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: ENCARG_1, P_1, S_1, +'_2, MINUS_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c1_2, c2_2, c3_3, c4_2, c5_3, c12, c13, c14, c15_2, c16_2, c17, c18_2, c19_2, c20, c21_2, c22_3, c_1 ---------------------------------------- (93) CdtRuleRemovalProof (UPPER BOUND(ADD(n^1))) Found a reduction pair which oriented the following tuples strictly. Hence they can be removed from S. *'(0, z0) -> c20 We considered the (Usable) Rules:none And the Tuples: ENCARG(cons_p(z0)) -> c1(P(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c2(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_+(z0, z1)) -> c3(+'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_minus(z0)) -> c4(MINUS(encArg(z0)), ENCARG(z0)) ENCARG(cons_*(z0, z1)) -> c5(*'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(0, z0) -> c20 *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) 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)) = [1] POL(+(x_1, x_2)) = [1] + x_2 POL(+'(x_1, x_2)) = 0 POL(0) = [1] POL(ENCARG(x_1)) = x_1 POL(ENCODE_*(x_1, x_2)) = [1] POL(ENCODE_+(x_1, x_2)) = 0 POL(ENCODE_MINUS(x_1)) = 0 POL(ENCODE_P(x_1)) = 0 POL(ENCODE_S(x_1)) = 0 POL(MINUS(x_1)) = 0 POL(P(x_1)) = 0 POL(S(x_1)) = 0 POL(c(x_1)) = x_1 POL(c1(x_1, x_2)) = x_1 + x_2 POL(c12) = 0 POL(c13) = 0 POL(c14) = 0 POL(c15(x_1, x_2)) = x_1 + x_2 POL(c16(x_1, x_2)) = x_1 + x_2 POL(c17) = 0 POL(c18(x_1, x_2)) = x_1 + x_2 POL(c19(x_1, x_2)) = x_1 + x_2 POL(c2(x_1, x_2)) = x_1 + x_2 POL(c20) = 0 POL(c21(x_1, x_2)) = x_1 + x_2 POL(c22(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c3(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c4(x_1, x_2)) = x_1 + x_2 POL(c5(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(cons_*(x_1, x_2)) = [1] + x_1 + x_2 POL(cons_+(x_1, x_2)) = [1] + x_1 + x_2 POL(cons_minus(x_1)) = [1] + x_1 POL(cons_p(x_1)) = [1] + x_1 POL(cons_s(x_1)) = [1] + x_1 POL(encArg(x_1)) = [1] + x_1 POL(minus(x_1)) = [1] POL(p(x_1)) = [1] + x_1 POL(s(x_1)) = [1] + x_1 ---------------------------------------- (94) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: ENCARG(cons_p(z0)) -> c1(P(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c2(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_+(z0, z1)) -> c3(+'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_minus(z0)) -> c4(MINUS(encArg(z0)), ENCARG(z0)) ENCARG(cons_*(z0, z1)) -> c5(*'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(0, z0) -> c20 *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) K tuples: *'(0, z0) -> c20 Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: ENCARG_1, P_1, S_1, +'_2, MINUS_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c1_2, c2_2, c3_3, c4_2, c5_3, c12, c13, c14, c15_2, c16_2, c17, c18_2, c19_2, c20, c21_2, c22_3, c_1 ---------------------------------------- (95) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_p(z0)) -> c1(P(encArg(z0)), ENCARG(z0)) by ENCARG(cons_p(0)) -> c1(P(0), ENCARG(0)) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ---------------------------------------- (96) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: ENCARG(cons_s(z0)) -> c2(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_+(z0, z1)) -> c3(+'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_minus(z0)) -> c4(MINUS(encArg(z0)), ENCARG(z0)) ENCARG(cons_*(z0, z1)) -> c5(*'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(0, z0) -> c20 *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(0)) -> c1(P(0), ENCARG(0)) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) K tuples: *'(0, z0) -> c20 Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: ENCARG_1, P_1, S_1, +'_2, MINUS_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c2_2, c3_3, c4_2, c5_3, c12, c13, c14, c15_2, c16_2, c17, c18_2, c19_2, c20, c21_2, c22_3, c_1, c1_2 ---------------------------------------- (97) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing nodes: ENCARG(cons_p(0)) -> c1(P(0), ENCARG(0)) *'(0, z0) -> c20 ---------------------------------------- (98) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: ENCARG(cons_s(z0)) -> c2(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_+(z0, z1)) -> c3(+'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_minus(z0)) -> c4(MINUS(encArg(z0)), ENCARG(z0)) ENCARG(cons_*(z0, z1)) -> c5(*'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) K tuples:none Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: ENCARG_1, P_1, S_1, +'_2, MINUS_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c2_2, c3_3, c4_2, c5_3, c12, c13, c14, c15_2, c16_2, c17, c18_2, c19_2, c21_2, c22_3, c_1, c1_2 ---------------------------------------- (99) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_s(z0)) -> c2(S(encArg(z0)), ENCARG(z0)) by ENCARG(cons_s(0)) -> c2(S(0), ENCARG(0)) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ---------------------------------------- (100) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: ENCARG(cons_+(z0, z1)) -> c3(+'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_minus(z0)) -> c4(MINUS(encArg(z0)), ENCARG(z0)) ENCARG(cons_*(z0, z1)) -> c5(*'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(0)) -> c2(S(0), ENCARG(0)) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) K tuples:none Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: ENCARG_1, P_1, S_1, +'_2, MINUS_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c3_3, c4_2, c5_3, c12, c13, c14, c15_2, c16_2, c17, c18_2, c19_2, c21_2, c22_3, c_1, c1_2, c2_2 ---------------------------------------- (101) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: ENCARG(cons_s(0)) -> c2(S(0), ENCARG(0)) ---------------------------------------- (102) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: ENCARG(cons_+(z0, z1)) -> c3(+'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_minus(z0)) -> c4(MINUS(encArg(z0)), ENCARG(z0)) ENCARG(cons_*(z0, z1)) -> c5(*'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) K tuples:none Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: ENCARG_1, P_1, S_1, +'_2, MINUS_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c3_3, c4_2, c5_3, c12, c13, c14, c15_2, c16_2, c17, c18_2, c19_2, c21_2, c22_3, c_1, c1_2, c2_2 ---------------------------------------- (103) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_+(z0, z1)) -> c3(+'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) by ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0), ENCARG(0)) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(0), ENCARG(x1)) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ---------------------------------------- (104) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: ENCARG(cons_minus(z0)) -> c4(MINUS(encArg(z0)), ENCARG(z0)) ENCARG(cons_*(z0, z1)) -> c5(*'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0), ENCARG(0)) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(0), ENCARG(x1)) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) K tuples:none Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: ENCARG_1, P_1, S_1, +'_2, MINUS_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c4_2, c5_3, c12, c13, c14, c15_2, c16_2, c17, c18_2, c19_2, c21_2, c22_3, c_1, c1_2, c2_2, c3_3 ---------------------------------------- (105) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (106) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: ENCARG(cons_minus(z0)) -> c4(MINUS(encArg(z0)), ENCARG(z0)) ENCARG(cons_*(z0, z1)) -> c5(*'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) K tuples:none Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: ENCARG_1, P_1, S_1, +'_2, MINUS_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c4_2, c5_3, c12, c13, c14, c15_2, c16_2, c17, c18_2, c19_2, c21_2, c22_3, c_1, c1_2, c2_2, c3_3, c3_2 ---------------------------------------- (107) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_minus(z0)) -> c4(MINUS(encArg(z0)), ENCARG(z0)) by ENCARG(cons_minus(0)) -> c4(MINUS(0), ENCARG(0)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ---------------------------------------- (108) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: ENCARG(cons_*(z0, z1)) -> c5(*'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(0)) -> c4(MINUS(0), ENCARG(0)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) K tuples:none Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: ENCARG_1, P_1, S_1, +'_2, MINUS_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c5_3, c12, c13, c14, c15_2, c16_2, c17, c18_2, c19_2, c21_2, c22_3, c_1, c1_2, c2_2, c3_3, c3_2, c4_2 ---------------------------------------- (109) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (110) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: ENCARG(cons_*(z0, z1)) -> c5(*'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) K tuples:none Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: ENCARG_1, P_1, S_1, +'_2, MINUS_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c5_3, c12, c13, c14, c15_2, c16_2, c17, c18_2, c19_2, c21_2, c22_3, c_1, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1 ---------------------------------------- (111) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_*(z0, z1)) -> c5(*'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) by ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0), ENCARG(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(0, x1)) -> c5(*'(0, encArg(x1)), ENCARG(0), ENCARG(x1)) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ---------------------------------------- (112) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0), ENCARG(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(0, x1)) -> c5(*'(0, encArg(x1)), ENCARG(0), ENCARG(x1)) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) K tuples:none Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2, ENCARG_1 Compound Symbols: c12, c13, c14, c15_2, c16_2, c17, c18_2, c19_2, c21_2, c22_3, c_1, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3 ---------------------------------------- (113) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (114) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) K tuples:none Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2, ENCARG_1 Compound Symbols: c12, c13, c14, c15_2, c16_2, c17, c18_2, c19_2, c21_2, c22_3, c_1, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1 ---------------------------------------- (115) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace +'(s(z0), z1) -> c15(S(+(z0, z1)), +'(z0, z1)) by +'(s(0), z0) -> c15(S(z0), +'(0, z0)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) ---------------------------------------- (116) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(0), z0) -> c15(S(z0), +'(0, z0)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) +'(s(0), z0) -> c15(S(z0), +'(0, z0)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) K tuples:none Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2, ENCARG_1 Compound Symbols: c12, c13, c14, c16_2, c17, c18_2, c19_2, c21_2, c22_3, c_1, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1 ---------------------------------------- (117) CdtGraphSplitRhsProof (BOTH BOUNDS(ID, ID)) Split RHS of tuples not part of any SCC ---------------------------------------- (118) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) K tuples:none Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2, ENCARG_1 Compound Symbols: c12, c13, c14, c16_2, c17, c18_2, c19_2, c21_2, c22_3, c_1, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1 ---------------------------------------- (119) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace +'(p(z0), z1) -> c16(P(+(z0, z1)), +'(z0, z1)) by +'(p(0), z0) -> c16(P(z0), +'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) ---------------------------------------- (120) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(0), z0) -> c16(P(z0), +'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(0), z0) -> c16(P(z0), +'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) K tuples:none Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2, ENCARG_1 Compound Symbols: c12, c13, c14, c17, c18_2, c19_2, c21_2, c22_3, c_1, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1 ---------------------------------------- (121) CdtGraphSplitRhsProof (BOTH BOUNDS(ID, ID)) Split RHS of tuples not part of any SCC ---------------------------------------- (122) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) K tuples:none Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2, ENCARG_1 Compound Symbols: c12, c13, c14, c17, c18_2, c19_2, c21_2, c22_3, c_1, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1 ---------------------------------------- (123) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MINUS(s(z0)) -> c18(P(minus(z0)), MINUS(z0)) by MINUS(s(0)) -> c18(P(0), MINUS(0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) ---------------------------------------- (124) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(0)) -> c18(P(0), MINUS(0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(0)) -> c18(P(0), MINUS(0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) K tuples:none Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2, ENCARG_1 Compound Symbols: c12, c13, c14, c17, c19_2, c21_2, c22_3, c_1, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1 ---------------------------------------- (125) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (126) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) K tuples:none Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2, ENCARG_1 Compound Symbols: c12, c13, c14, c17, c19_2, c21_2, c22_3, c_1, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1 ---------------------------------------- (127) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MINUS(p(z0)) -> c19(S(minus(z0)), MINUS(z0)) by MINUS(p(0)) -> c19(S(0), MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) ---------------------------------------- (128) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(0)) -> c19(S(0), MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(0)) -> c19(S(0), MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) K tuples:none Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2, ENCARG_1 Compound Symbols: c12, c13, c14, c17, c21_2, c22_3, c_1, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (129) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (130) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) K tuples:none Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2, ENCARG_1 Compound Symbols: c12, c13, c14, c17, c21_2, c22_3, c_1, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1 ---------------------------------------- (131) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace *'(s(z0), z1) -> c21(+'(*(z0, z1), z1), *'(z0, z1)) by *'(s(0), z0) -> c21(+'(0, z0), *'(0, z0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) ---------------------------------------- (132) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(0), z0) -> c21(+'(0, z0), *'(0, z0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(0), z0) -> c21(+'(0, z0), *'(0, z0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) K tuples:none Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2, ENCARG_1 Compound Symbols: c12, c13, c14, c17, c22_3, c_1, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1 ---------------------------------------- (133) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (134) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) K tuples:none Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2, ENCARG_1 Compound Symbols: c12, c13, c14, c17, c22_3, c_1, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1 ---------------------------------------- (135) CdtRuleRemovalProof (UPPER BOUND(ADD(n^1))) Found a reduction pair which oriented the following tuples strictly. Hence they can be removed from S. *'(s(0), z0) -> c21(+'(0, z0)) We considered the (Usable) Rules:none And the Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) The order we found is given by the following interpretation: Polynomial interpretation : POL(*(x_1, x_2)) = x_2 POL(*'(x_1, x_2)) = [1] POL(+(x_1, x_2)) = 0 POL(+'(x_1, x_2)) = 0 POL(0) = 0 POL(ENCARG(x_1)) = x_1 POL(ENCODE_*(x_1, x_2)) = [1] POL(ENCODE_+(x_1, x_2)) = 0 POL(ENCODE_MINUS(x_1)) = 0 POL(ENCODE_P(x_1)) = 0 POL(ENCODE_S(x_1)) = 0 POL(MINUS(x_1)) = 0 POL(P(x_1)) = 0 POL(S(x_1)) = 0 POL(c(x_1)) = x_1 POL(c1(x_1, x_2)) = x_1 + x_2 POL(c12) = 0 POL(c13) = 0 POL(c14) = 0 POL(c15(x_1)) = x_1 POL(c15(x_1, x_2)) = x_1 + x_2 POL(c16(x_1)) = x_1 POL(c16(x_1, x_2)) = x_1 + x_2 POL(c17) = 0 POL(c18(x_1)) = x_1 POL(c18(x_1, x_2)) = x_1 + x_2 POL(c19(x_1)) = x_1 POL(c19(x_1, x_2)) = x_1 + x_2 POL(c2(x_1, x_2)) = x_1 + x_2 POL(c21(x_1)) = x_1 POL(c21(x_1, x_2)) = x_1 + x_2 POL(c22(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c3(x_1, x_2)) = x_1 + x_2 POL(c3(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c4(x_1)) = x_1 POL(c4(x_1, x_2)) = x_1 + x_2 POL(c5(x_1)) = x_1 POL(c5(x_1, x_2)) = x_1 + x_2 POL(c5(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c6(x_1)) = x_1 POL(c7(x_1)) = x_1 POL(cons_*(x_1, x_2)) = [1] + x_1 + x_2 POL(cons_+(x_1, x_2)) = x_1 + x_2 POL(cons_minus(x_1)) = x_1 POL(cons_p(x_1)) = x_1 POL(cons_s(x_1)) = x_1 POL(encArg(x_1)) = x_1 POL(minus(x_1)) = 0 POL(p(x_1)) = 0 POL(s(x_1)) = 0 ---------------------------------------- (136) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2, ENCARG_1 Compound Symbols: c12, c13, c14, c17, c22_3, c_1, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1 ---------------------------------------- (137) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace *'(p(z0), z1) -> c22(+'(*(z0, z1), minus(z1)), *'(z0, z1), MINUS(z1)) by *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(0), z0) -> c22(+'(0, minus(z0)), *'(0, z0), MINUS(z0)) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) ---------------------------------------- (138) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(0), z0) -> c22(+'(0, minus(z0)), *'(0, z0), MINUS(z0)) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(0), z0) -> c22(+'(0, minus(z0)), *'(0, z0), MINUS(z0)) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2, ENCARG_1, *'_2 Compound Symbols: c12, c13, c14, c17, c_1, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1 ---------------------------------------- (139) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (140) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c22(+'(0, minus(z0)), MINUS(z0)) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c22(+'(0, minus(z0)), MINUS(z0)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2, ENCARG_1, *'_2 Compound Symbols: c12, c13, c14, c17, c_1, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c22_2 ---------------------------------------- (141) CdtGraphSplitRhsProof (BOTH BOUNDS(ID, ID)) Split RHS of tuples not part of any SCC ---------------------------------------- (142) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2, ENCARG_1, *'_2 Compound Symbols: c12, c13, c14, c17, c_1, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1 ---------------------------------------- (143) CdtRuleRemovalProof (UPPER BOUND(ADD(n^1))) Found a reduction pair which oriented the following tuples strictly. Hence they can be removed from S. *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) We considered the (Usable) Rules:none And the Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) The order we found is given by the following interpretation: Polynomial interpretation : POL(*(x_1, x_2)) = 0 POL(*'(x_1, x_2)) = [1] POL(+(x_1, x_2)) = 0 POL(+'(x_1, x_2)) = 0 POL(0) = 0 POL(ENCARG(x_1)) = x_1 POL(ENCODE_*(x_1, x_2)) = [1] POL(ENCODE_+(x_1, x_2)) = 0 POL(ENCODE_MINUS(x_1)) = 0 POL(ENCODE_P(x_1)) = 0 POL(ENCODE_S(x_1)) = 0 POL(MINUS(x_1)) = 0 POL(P(x_1)) = 0 POL(S(x_1)) = 0 POL(c(x_1)) = x_1 POL(c1(x_1, x_2)) = x_1 + x_2 POL(c12) = 0 POL(c13) = 0 POL(c14) = 0 POL(c15(x_1)) = x_1 POL(c15(x_1, x_2)) = x_1 + x_2 POL(c16(x_1)) = x_1 POL(c16(x_1, x_2)) = x_1 + x_2 POL(c17) = 0 POL(c18(x_1)) = x_1 POL(c18(x_1, x_2)) = x_1 + x_2 POL(c19(x_1)) = x_1 POL(c19(x_1, x_2)) = x_1 + x_2 POL(c2(x_1, x_2)) = x_1 + x_2 POL(c21(x_1)) = x_1 POL(c21(x_1, x_2)) = x_1 + x_2 POL(c22(x_1)) = x_1 POL(c22(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c3(x_1, x_2)) = x_1 + x_2 POL(c3(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c4(x_1)) = x_1 POL(c4(x_1, x_2)) = x_1 + x_2 POL(c5(x_1)) = x_1 POL(c5(x_1, x_2)) = x_1 + x_2 POL(c5(x_1, x_2, x_3)) = x_1 + x_2 + x_3 POL(c6(x_1)) = x_1 POL(c7(x_1)) = x_1 POL(c8(x_1)) = x_1 POL(cons_*(x_1, x_2)) = [1] + x_1 + x_2 POL(cons_+(x_1, x_2)) = x_1 + x_2 POL(cons_minus(x_1)) = x_1 POL(cons_p(x_1)) = x_1 POL(cons_s(x_1)) = x_1 POL(encArg(x_1)) = x_1 POL(minus(x_1)) = 0 POL(p(x_1)) = 0 POL(s(x_1)) = 0 ---------------------------------------- (144) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCODE_P(z0) -> c(P(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2, ENCARG_1, *'_2 Compound Symbols: c12, c13, c14, c17, c_1, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1 ---------------------------------------- (145) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCODE_P(z0) -> c(P(encArg(z0))) by ENCODE_P(0) -> c(P(0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ---------------------------------------- (146) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(0) -> c(P(0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2, ENCARG_1, *'_2, ENCODE_P_1 Compound Symbols: c12, c13, c14, c17, c_1, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1 ---------------------------------------- (147) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: ENCODE_P(0) -> c(P(0)) ---------------------------------------- (148) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2, ENCARG_1, *'_2, ENCODE_P_1 Compound Symbols: c12, c13, c14, c17, c_1, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1 ---------------------------------------- (149) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCODE_S(z0) -> c(S(encArg(z0))) by ENCODE_S(0) -> c(S(0)) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ---------------------------------------- (150) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(0) -> c(S(0)) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1 Compound Symbols: c12, c13, c14, c17, c_1, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1 ---------------------------------------- (151) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: ENCODE_S(0) -> c(S(0)) ---------------------------------------- (152) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1 Compound Symbols: c12, c13, c14, c17, c_1, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1 ---------------------------------------- (153) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCODE_+(z0, z1) -> c(+'(encArg(z0), encArg(z1))) by ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ---------------------------------------- (154) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCODE_MINUS_1, ENCODE_*_2, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2 Compound Symbols: c12, c13, c14, c17, c_1, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1 ---------------------------------------- (155) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCODE_MINUS(z0) -> c(MINUS(encArg(z0))) by ENCODE_MINUS(0) -> c(MINUS(0)) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ---------------------------------------- (156) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(0) -> c(MINUS(0)) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCODE_*_2, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1 Compound Symbols: c12, c13, c14, c17, c_1, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1 ---------------------------------------- (157) CdtLeafRemovalProof (ComplexityIfPolyImplication) Removed 1 leading nodes: ENCODE_MINUS(0) -> c(MINUS(0)) ---------------------------------------- (158) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCODE_*_2, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1 Compound Symbols: c12, c13, c14, c17, c_1, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1 ---------------------------------------- (159) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCODE_*(z0, z1) -> c(*'(encArg(z0), encArg(z1))) by ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(0, x1) -> c(*'(0, encArg(x1))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ---------------------------------------- (160) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(0, x1) -> c(*'(0, encArg(x1))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1 ---------------------------------------- (161) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: ENCODE_*(0, x1) -> c(*'(0, encArg(x1))) ---------------------------------------- (162) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1 ---------------------------------------- (163) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_p(cons_p(z0))) -> c1(P(p(encArg(z0))), ENCARG(cons_p(z0))) by ENCARG(cons_p(cons_p(0))) -> c1(P(p(0)), ENCARG(cons_p(0))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ---------------------------------------- (164) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(0))) -> c1(P(p(0)), ENCARG(cons_p(0))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1 ---------------------------------------- (165) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: ENCARG(cons_p(cons_p(0))) -> c1(P(p(0)), ENCARG(cons_p(0))) ---------------------------------------- (166) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1 ---------------------------------------- (167) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_p(cons_+(z0, z1))) -> c1(P(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) by ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ---------------------------------------- (168) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1 ---------------------------------------- (169) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_p(cons_minus(z0))) -> c1(P(minus(encArg(z0))), ENCARG(cons_minus(z0))) by ENCARG(cons_p(cons_minus(0))) -> c1(P(minus(0)), ENCARG(cons_minus(0))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ---------------------------------------- (170) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(0))) -> c1(P(minus(0)), ENCARG(cons_minus(0))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1 ---------------------------------------- (171) CdtGraphSplitRhsProof (BOTH BOUNDS(ID, ID)) Split RHS of tuples not part of any SCC ---------------------------------------- (172) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1 ---------------------------------------- (173) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_p(cons_*(z0, z1))) -> c1(P(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) by ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ---------------------------------------- (174) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1 ---------------------------------------- (175) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_s(cons_s(z0))) -> c2(S(s(encArg(z0))), ENCARG(cons_s(z0))) by ENCARG(cons_s(cons_s(0))) -> c2(S(s(0)), ENCARG(cons_s(0))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ---------------------------------------- (176) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(0))) -> c2(S(s(0)), ENCARG(cons_s(0))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1 ---------------------------------------- (177) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: ENCARG(cons_s(cons_s(0))) -> c2(S(s(0)), ENCARG(cons_s(0))) ---------------------------------------- (178) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1 ---------------------------------------- (179) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_s(cons_+(z0, z1))) -> c2(S(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) by ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ---------------------------------------- (180) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1 ---------------------------------------- (181) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_s(cons_minus(z0))) -> c2(S(minus(encArg(z0))), ENCARG(cons_minus(z0))) by ENCARG(cons_s(cons_minus(0))) -> c2(S(minus(0)), ENCARG(cons_minus(0))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ---------------------------------------- (182) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(0))) -> c2(S(minus(0)), ENCARG(cons_minus(0))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1 ---------------------------------------- (183) CdtGraphSplitRhsProof (BOTH BOUNDS(ID, ID)) Split RHS of tuples not part of any SCC ---------------------------------------- (184) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1 ---------------------------------------- (185) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_s(cons_*(z0, z1))) -> c2(S(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) by ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ---------------------------------------- (186) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1 ---------------------------------------- (187) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_+(x0, cons_p(z0))) -> c3(+'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) by ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0), ENCARG(cons_p(0))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(0), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ---------------------------------------- (188) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0), ENCARG(cons_p(0))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(0), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1 ---------------------------------------- (189) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (190) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1 ---------------------------------------- (191) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_+(x0, cons_s(z0))) -> c3(+'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) by ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0), ENCARG(cons_s(0))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(0), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ---------------------------------------- (192) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0), ENCARG(cons_s(0))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(0), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1 ---------------------------------------- (193) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (194) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1 ---------------------------------------- (195) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_+(x0, cons_+(z0, z1))) -> c3(+'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) by ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(0), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ---------------------------------------- (196) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(0), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1 ---------------------------------------- (197) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (198) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1 ---------------------------------------- (199) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_+(x0, cons_minus(z0))) -> c3(+'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) by ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(0), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ---------------------------------------- (200) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(0), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1 ---------------------------------------- (201) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (202) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1 ---------------------------------------- (203) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_+(x0, cons_*(z0, z1))) -> c3(+'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) by ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(0), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ---------------------------------------- (204) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(0), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1 ---------------------------------------- (205) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (206) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1 ---------------------------------------- (207) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_+(cons_+(z0, z1), x1)) -> c3(+'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) by ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1)), ENCARG(0)) ENCARG(cons_+(cons_+(x0, x1), cons_p(z0))) -> c3(+'(+(encArg(x0), encArg(x1)), p(encArg(z0))), ENCARG(cons_+(x0, x1)), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_+(x0, x1), cons_s(z0))) -> c3(+'(+(encArg(x0), encArg(x1)), s(encArg(z0))), ENCARG(cons_+(x0, x1)), ENCARG(cons_s(z0))) ENCARG(cons_+(cons_+(x0, x1), cons_+(z0, z1))) -> c3(+'(+(encArg(x0), encArg(x1)), +(encArg(z0), encArg(z1))), ENCARG(cons_+(x0, x1)), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(cons_+(x0, x1), cons_minus(z0))) -> c3(+'(+(encArg(x0), encArg(x1)), minus(encArg(z0))), ENCARG(cons_+(x0, x1)), ENCARG(cons_minus(z0))) ENCARG(cons_+(cons_+(x0, x1), cons_*(z0, z1))) -> c3(+'(+(encArg(x0), encArg(x1)), *(encArg(z0), encArg(z1))), ENCARG(cons_+(x0, x1)), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ---------------------------------------- (208) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1)), ENCARG(0)) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1 ---------------------------------------- (209) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (210) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1 ---------------------------------------- (211) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_+(cons_minus(z0), x1)) -> c3(+'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) by ENCARG(cons_+(cons_minus(x0), 0)) -> c3(+'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0)), ENCARG(0)) ENCARG(cons_+(cons_minus(x0), cons_p(z0))) -> c3(+'(minus(encArg(x0)), p(encArg(z0))), ENCARG(cons_minus(x0)), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_minus(x0), cons_s(z0))) -> c3(+'(minus(encArg(x0)), s(encArg(z0))), ENCARG(cons_minus(x0)), ENCARG(cons_s(z0))) ENCARG(cons_+(cons_minus(x0), cons_+(z0, z1))) -> c3(+'(minus(encArg(x0)), +(encArg(z0), encArg(z1))), ENCARG(cons_minus(x0)), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(cons_minus(x0), cons_minus(z0))) -> c3(+'(minus(encArg(x0)), minus(encArg(z0))), ENCARG(cons_minus(x0)), ENCARG(cons_minus(z0))) ENCARG(cons_+(cons_minus(x0), cons_*(z0, z1))) -> c3(+'(minus(encArg(x0)), *(encArg(z0), encArg(z1))), ENCARG(cons_minus(x0)), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_minus(0), x1)) -> c3(+'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_p(z0)), x1)) -> c3(+'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_s(z0)), x1)) -> c3(+'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_+(z0, z1)), x1)) -> c3(+'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_minus(z0)), x1)) -> c3(+'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_*(z0, z1)), x1)) -> c3(+'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ---------------------------------------- (212) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_+(cons_minus(x0), 0)) -> c3(+'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0)), ENCARG(0)) ENCARG(cons_+(cons_minus(0), x1)) -> c3(+'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_p(z0)), x1)) -> c3(+'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_s(z0)), x1)) -> c3(+'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_+(z0, z1)), x1)) -> c3(+'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_minus(z0)), x1)) -> c3(+'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_*(z0, z1)), x1)) -> c3(+'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1 ---------------------------------------- (213) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (214) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_+(cons_minus(0), x1)) -> c3(+'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_p(z0)), x1)) -> c3(+'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_s(z0)), x1)) -> c3(+'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_+(z0, z1)), x1)) -> c3(+'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_minus(z0)), x1)) -> c3(+'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_*(z0, z1)), x1)) -> c3(+'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(x0), 0)) -> c3(+'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1 ---------------------------------------- (215) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_+(cons_*(z0, z1), x1)) -> c3(+'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) by ENCARG(cons_+(cons_*(x0, x1), 0)) -> c3(+'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1)), ENCARG(0)) ENCARG(cons_+(cons_*(x0, x1), cons_p(z0))) -> c3(+'(*(encArg(x0), encArg(x1)), p(encArg(z0))), ENCARG(cons_*(x0, x1)), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_*(x0, x1), cons_s(z0))) -> c3(+'(*(encArg(x0), encArg(x1)), s(encArg(z0))), ENCARG(cons_*(x0, x1)), ENCARG(cons_s(z0))) ENCARG(cons_+(cons_*(x0, x1), cons_+(z0, z1))) -> c3(+'(*(encArg(x0), encArg(x1)), +(encArg(z0), encArg(z1))), ENCARG(cons_*(x0, x1)), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(cons_*(x0, x1), cons_minus(z0))) -> c3(+'(*(encArg(x0), encArg(x1)), minus(encArg(z0))), ENCARG(cons_*(x0, x1)), ENCARG(cons_minus(z0))) ENCARG(cons_+(cons_*(x0, x1), cons_*(z0, z1))) -> c3(+'(*(encArg(x0), encArg(x1)), *(encArg(z0), encArg(z1))), ENCARG(cons_*(x0, x1)), ENCARG(cons_*(z0, z1))) ENCARG(cons_+(cons_*(x0, 0), x2)) -> c3(+'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_p(z0)), x2)) -> c3(+'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_s(z0)), x2)) -> c3(+'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_+(z0, z1)), x2)) -> c3(+'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_minus(z0)), x2)) -> c3(+'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_*(z0, z1)), x2)) -> c3(+'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(0, x1), x2)) -> c3(+'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_p(z0), x1), x2)) -> c3(+'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_s(z0), x1), x2)) -> c3(+'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_+(z0, z1), x1), x2)) -> c3(+'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_minus(z0), x1), x2)) -> c3(+'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_*(z0, z1), x1), x2)) -> c3(+'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) ---------------------------------------- (216) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_+(cons_minus(0), x1)) -> c3(+'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_p(z0)), x1)) -> c3(+'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_s(z0)), x1)) -> c3(+'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_+(z0, z1)), x1)) -> c3(+'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_minus(z0)), x1)) -> c3(+'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_*(z0, z1)), x1)) -> c3(+'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(x0), 0)) -> c3(+'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) ENCARG(cons_+(cons_*(x0, x1), 0)) -> c3(+'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1)), ENCARG(0)) ENCARG(cons_+(cons_*(x0, 0), x2)) -> c3(+'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_p(z0)), x2)) -> c3(+'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_s(z0)), x2)) -> c3(+'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_+(z0, z1)), x2)) -> c3(+'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_minus(z0)), x2)) -> c3(+'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_*(z0, z1)), x2)) -> c3(+'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(0, x1), x2)) -> c3(+'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_p(z0), x1), x2)) -> c3(+'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_s(z0), x1), x2)) -> c3(+'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_+(z0, z1), x1), x2)) -> c3(+'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_minus(z0), x1), x2)) -> c3(+'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_*(z0, z1), x1), x2)) -> c3(+'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1 ---------------------------------------- (217) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (218) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_+(cons_minus(0), x1)) -> c3(+'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_p(z0)), x1)) -> c3(+'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_s(z0)), x1)) -> c3(+'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_+(z0, z1)), x1)) -> c3(+'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_minus(z0)), x1)) -> c3(+'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_*(z0, z1)), x1)) -> c3(+'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(x0), 0)) -> c3(+'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) ENCARG(cons_+(cons_*(x0, 0), x2)) -> c3(+'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_p(z0)), x2)) -> c3(+'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_s(z0)), x2)) -> c3(+'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_+(z0, z1)), x2)) -> c3(+'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_minus(z0)), x2)) -> c3(+'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_*(z0, z1)), x2)) -> c3(+'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(0, x1), x2)) -> c3(+'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_p(z0), x1), x2)) -> c3(+'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_s(z0), x1), x2)) -> c3(+'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_+(z0, z1), x1), x2)) -> c3(+'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_minus(z0), x1), x2)) -> c3(+'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_*(z0, z1), x1), x2)) -> c3(+'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, x1), 0)) -> c3(+'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1 ---------------------------------------- (219) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_+(x0, 0)) -> c3(+'(encArg(x0), 0), ENCARG(x0)) by ENCARG(cons_+(0, 0)) -> c3(+'(0, 0), ENCARG(0)) ENCARG(cons_+(cons_p(z0), 0)) -> c3(+'(p(encArg(z0)), 0), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_s(z0), 0)) -> c3(+'(s(encArg(z0)), 0), ENCARG(cons_s(z0))) ENCARG(cons_+(cons_+(z0, z1), 0)) -> c3(+'(+(encArg(z0), encArg(z1)), 0), ENCARG(cons_+(z0, z1))) ENCARG(cons_+(cons_minus(z0), 0)) -> c3(+'(minus(encArg(z0)), 0), ENCARG(cons_minus(z0))) ENCARG(cons_+(cons_*(z0, z1), 0)) -> c3(+'(*(encArg(z0), encArg(z1)), 0), ENCARG(cons_*(z0, z1))) ---------------------------------------- (220) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_+(cons_minus(0), x1)) -> c3(+'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_p(z0)), x1)) -> c3(+'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_s(z0)), x1)) -> c3(+'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_+(z0, z1)), x1)) -> c3(+'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_minus(z0)), x1)) -> c3(+'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_*(z0, z1)), x1)) -> c3(+'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(x0), 0)) -> c3(+'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) ENCARG(cons_+(cons_*(x0, 0), x2)) -> c3(+'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_p(z0)), x2)) -> c3(+'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_s(z0)), x2)) -> c3(+'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_+(z0, z1)), x2)) -> c3(+'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_minus(z0)), x2)) -> c3(+'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_*(z0, z1)), x2)) -> c3(+'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(0, x1), x2)) -> c3(+'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_p(z0), x1), x2)) -> c3(+'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_s(z0), x1), x2)) -> c3(+'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_+(z0, z1), x1), x2)) -> c3(+'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_minus(z0), x1), x2)) -> c3(+'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_*(z0, z1), x1), x2)) -> c3(+'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, x1), 0)) -> c3(+'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1))) ENCARG(cons_+(0, 0)) -> c3(+'(0, 0), ENCARG(0)) ENCARG(cons_+(cons_p(z0), 0)) -> c3(+'(p(encArg(z0)), 0), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_s(z0), 0)) -> c3(+'(s(encArg(z0)), 0), ENCARG(cons_s(z0))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1 ---------------------------------------- (221) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (222) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_+(cons_minus(0), x1)) -> c3(+'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_p(z0)), x1)) -> c3(+'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_s(z0)), x1)) -> c3(+'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_+(z0, z1)), x1)) -> c3(+'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_minus(z0)), x1)) -> c3(+'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_*(z0, z1)), x1)) -> c3(+'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(x0), 0)) -> c3(+'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) ENCARG(cons_+(cons_*(x0, 0), x2)) -> c3(+'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_p(z0)), x2)) -> c3(+'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_s(z0)), x2)) -> c3(+'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_+(z0, z1)), x2)) -> c3(+'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_minus(z0)), x2)) -> c3(+'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_*(z0, z1)), x2)) -> c3(+'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(0, x1), x2)) -> c3(+'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_p(z0), x1), x2)) -> c3(+'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_s(z0), x1), x2)) -> c3(+'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_+(z0, z1), x1), x2)) -> c3(+'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_minus(z0), x1), x2)) -> c3(+'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_*(z0, z1), x1), x2)) -> c3(+'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, x1), 0)) -> c3(+'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1))) ENCARG(cons_+(cons_p(z0), 0)) -> c3(+'(p(encArg(z0)), 0), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_s(z0), 0)) -> c3(+'(s(encArg(z0)), 0), ENCARG(cons_s(z0))) ENCARG(cons_+(0, 0)) -> c3(+'(0, 0)) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1, c3_1 ---------------------------------------- (223) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_minus(cons_+(z0, z1))) -> c4(MINUS(+(encArg(z0), encArg(z1))), ENCARG(cons_+(z0, z1))) by ENCARG(cons_minus(cons_+(x0, 0))) -> c4(MINUS(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_minus(cons_+(x0, cons_p(z0)))) -> c4(MINUS(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_minus(cons_+(x0, cons_s(z0)))) -> c4(MINUS(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_minus(cons_+(x0, cons_+(z0, z1)))) -> c4(MINUS(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_+(x0, cons_minus(z0)))) -> c4(MINUS(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_+(x0, cons_*(z0, z1)))) -> c4(MINUS(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_+(0, x1))) -> c4(MINUS(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_minus(cons_+(cons_p(z0), x1))) -> c4(MINUS(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_minus(cons_+(cons_s(z0), x1))) -> c4(MINUS(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_minus(cons_+(cons_+(z0, z1), x1))) -> c4(MINUS(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_+(cons_minus(z0), x1))) -> c4(MINUS(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_minus(cons_+(cons_*(z0, z1), x1))) -> c4(MINUS(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ---------------------------------------- (224) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_+(cons_minus(0), x1)) -> c3(+'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_p(z0)), x1)) -> c3(+'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_s(z0)), x1)) -> c3(+'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_+(z0, z1)), x1)) -> c3(+'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_minus(z0)), x1)) -> c3(+'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_*(z0, z1)), x1)) -> c3(+'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(x0), 0)) -> c3(+'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) ENCARG(cons_+(cons_*(x0, 0), x2)) -> c3(+'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_p(z0)), x2)) -> c3(+'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_s(z0)), x2)) -> c3(+'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_+(z0, z1)), x2)) -> c3(+'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_minus(z0)), x2)) -> c3(+'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_*(z0, z1)), x2)) -> c3(+'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(0, x1), x2)) -> c3(+'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_p(z0), x1), x2)) -> c3(+'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_s(z0), x1), x2)) -> c3(+'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_+(z0, z1), x1), x2)) -> c3(+'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_minus(z0), x1), x2)) -> c3(+'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_*(z0, z1), x1), x2)) -> c3(+'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, x1), 0)) -> c3(+'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1))) ENCARG(cons_+(cons_p(z0), 0)) -> c3(+'(p(encArg(z0)), 0), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_s(z0), 0)) -> c3(+'(s(encArg(z0)), 0), ENCARG(cons_s(z0))) ENCARG(cons_+(0, 0)) -> c3(+'(0, 0)) ENCARG(cons_minus(cons_+(x0, 0))) -> c4(MINUS(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_minus(cons_+(x0, cons_p(z0)))) -> c4(MINUS(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_minus(cons_+(x0, cons_s(z0)))) -> c4(MINUS(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_minus(cons_+(x0, cons_+(z0, z1)))) -> c4(MINUS(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_+(x0, cons_minus(z0)))) -> c4(MINUS(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_+(x0, cons_*(z0, z1)))) -> c4(MINUS(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_+(0, x1))) -> c4(MINUS(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_minus(cons_+(cons_p(z0), x1))) -> c4(MINUS(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_minus(cons_+(cons_s(z0), x1))) -> c4(MINUS(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_minus(cons_+(cons_+(z0, z1), x1))) -> c4(MINUS(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_+(cons_minus(z0), x1))) -> c4(MINUS(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_minus(cons_+(cons_*(z0, z1), x1))) -> c4(MINUS(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1, c3_1 ---------------------------------------- (225) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_minus(cons_minus(z0))) -> c4(MINUS(minus(encArg(z0))), ENCARG(cons_minus(z0))) by ENCARG(cons_minus(cons_minus(0))) -> c4(MINUS(minus(0)), ENCARG(cons_minus(0))) ENCARG(cons_minus(cons_minus(cons_p(z0)))) -> c4(MINUS(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_minus(cons_minus(cons_s(z0)))) -> c4(MINUS(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_minus(cons_minus(cons_+(z0, z1)))) -> c4(MINUS(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_minus(cons_minus(cons_minus(z0)))) -> c4(MINUS(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_minus(cons_minus(cons_*(z0, z1)))) -> c4(MINUS(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ---------------------------------------- (226) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_+(cons_minus(0), x1)) -> c3(+'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_p(z0)), x1)) -> c3(+'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_s(z0)), x1)) -> c3(+'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_+(z0, z1)), x1)) -> c3(+'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_minus(z0)), x1)) -> c3(+'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_*(z0, z1)), x1)) -> c3(+'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(x0), 0)) -> c3(+'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) ENCARG(cons_+(cons_*(x0, 0), x2)) -> c3(+'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_p(z0)), x2)) -> c3(+'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_s(z0)), x2)) -> c3(+'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_+(z0, z1)), x2)) -> c3(+'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_minus(z0)), x2)) -> c3(+'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_*(z0, z1)), x2)) -> c3(+'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(0, x1), x2)) -> c3(+'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_p(z0), x1), x2)) -> c3(+'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_s(z0), x1), x2)) -> c3(+'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_+(z0, z1), x1), x2)) -> c3(+'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_minus(z0), x1), x2)) -> c3(+'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_*(z0, z1), x1), x2)) -> c3(+'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, x1), 0)) -> c3(+'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1))) ENCARG(cons_+(cons_p(z0), 0)) -> c3(+'(p(encArg(z0)), 0), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_s(z0), 0)) -> c3(+'(s(encArg(z0)), 0), ENCARG(cons_s(z0))) ENCARG(cons_+(0, 0)) -> c3(+'(0, 0)) ENCARG(cons_minus(cons_+(x0, 0))) -> c4(MINUS(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_minus(cons_+(x0, cons_p(z0)))) -> c4(MINUS(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_minus(cons_+(x0, cons_s(z0)))) -> c4(MINUS(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_minus(cons_+(x0, cons_+(z0, z1)))) -> c4(MINUS(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_+(x0, cons_minus(z0)))) -> c4(MINUS(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_+(x0, cons_*(z0, z1)))) -> c4(MINUS(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_+(0, x1))) -> c4(MINUS(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_minus(cons_+(cons_p(z0), x1))) -> c4(MINUS(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_minus(cons_+(cons_s(z0), x1))) -> c4(MINUS(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_minus(cons_+(cons_+(z0, z1), x1))) -> c4(MINUS(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_+(cons_minus(z0), x1))) -> c4(MINUS(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_minus(cons_+(cons_*(z0, z1), x1))) -> c4(MINUS(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_minus(cons_minus(0))) -> c4(MINUS(minus(0)), ENCARG(cons_minus(0))) ENCARG(cons_minus(cons_minus(cons_p(z0)))) -> c4(MINUS(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_minus(cons_minus(cons_s(z0)))) -> c4(MINUS(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_minus(cons_minus(cons_+(z0, z1)))) -> c4(MINUS(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_minus(cons_minus(cons_minus(z0)))) -> c4(MINUS(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_minus(cons_minus(cons_*(z0, z1)))) -> c4(MINUS(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1, c3_1 ---------------------------------------- (227) CdtGraphSplitRhsProof (BOTH BOUNDS(ID, ID)) Split RHS of tuples not part of any SCC ---------------------------------------- (228) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_+(cons_minus(0), x1)) -> c3(+'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_p(z0)), x1)) -> c3(+'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_s(z0)), x1)) -> c3(+'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_+(z0, z1)), x1)) -> c3(+'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_minus(z0)), x1)) -> c3(+'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_*(z0, z1)), x1)) -> c3(+'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(x0), 0)) -> c3(+'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) ENCARG(cons_+(cons_*(x0, 0), x2)) -> c3(+'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_p(z0)), x2)) -> c3(+'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_s(z0)), x2)) -> c3(+'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_+(z0, z1)), x2)) -> c3(+'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_minus(z0)), x2)) -> c3(+'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_*(z0, z1)), x2)) -> c3(+'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(0, x1), x2)) -> c3(+'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_p(z0), x1), x2)) -> c3(+'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_s(z0), x1), x2)) -> c3(+'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_+(z0, z1), x1), x2)) -> c3(+'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_minus(z0), x1), x2)) -> c3(+'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_*(z0, z1), x1), x2)) -> c3(+'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, x1), 0)) -> c3(+'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1))) ENCARG(cons_+(cons_p(z0), 0)) -> c3(+'(p(encArg(z0)), 0), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_s(z0), 0)) -> c3(+'(s(encArg(z0)), 0), ENCARG(cons_s(z0))) ENCARG(cons_+(0, 0)) -> c3(+'(0, 0)) ENCARG(cons_minus(cons_+(x0, 0))) -> c4(MINUS(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_minus(cons_+(x0, cons_p(z0)))) -> c4(MINUS(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_minus(cons_+(x0, cons_s(z0)))) -> c4(MINUS(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_minus(cons_+(x0, cons_+(z0, z1)))) -> c4(MINUS(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_+(x0, cons_minus(z0)))) -> c4(MINUS(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_+(x0, cons_*(z0, z1)))) -> c4(MINUS(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_+(0, x1))) -> c4(MINUS(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_minus(cons_+(cons_p(z0), x1))) -> c4(MINUS(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_minus(cons_+(cons_s(z0), x1))) -> c4(MINUS(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_minus(cons_+(cons_+(z0, z1), x1))) -> c4(MINUS(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_+(cons_minus(z0), x1))) -> c4(MINUS(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_minus(cons_+(cons_*(z0, z1), x1))) -> c4(MINUS(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_minus(cons_minus(cons_p(z0)))) -> c4(MINUS(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_minus(cons_minus(cons_s(z0)))) -> c4(MINUS(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_minus(cons_minus(cons_+(z0, z1)))) -> c4(MINUS(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_minus(cons_minus(cons_minus(z0)))) -> c4(MINUS(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_minus(cons_minus(cons_*(z0, z1)))) -> c4(MINUS(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_minus(cons_minus(0))) -> c11(MINUS(minus(0))) ENCARG(cons_minus(cons_minus(0))) -> c11(ENCARG(cons_minus(0))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1, c3_1, c11_1 ---------------------------------------- (229) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_minus(cons_*(z0, z1))) -> c4(MINUS(*(encArg(z0), encArg(z1))), ENCARG(cons_*(z0, z1))) by ENCARG(cons_minus(cons_*(x0, 0))) -> c4(MINUS(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_minus(cons_*(x0, cons_p(z0)))) -> c4(MINUS(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_minus(cons_*(x0, cons_s(z0)))) -> c4(MINUS(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_minus(cons_*(x0, cons_+(z0, z1)))) -> c4(MINUS(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_*(x0, cons_minus(z0)))) -> c4(MINUS(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_*(x0, cons_*(z0, z1)))) -> c4(MINUS(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_*(0, x1))) -> c4(MINUS(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_minus(cons_*(cons_p(z0), x1))) -> c4(MINUS(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_minus(cons_*(cons_s(z0), x1))) -> c4(MINUS(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_minus(cons_*(cons_+(z0, z1), x1))) -> c4(MINUS(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_*(cons_minus(z0), x1))) -> c4(MINUS(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_minus(cons_*(cons_*(z0, z1), x1))) -> c4(MINUS(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ---------------------------------------- (230) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_+(cons_minus(0), x1)) -> c3(+'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_p(z0)), x1)) -> c3(+'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_s(z0)), x1)) -> c3(+'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_+(z0, z1)), x1)) -> c3(+'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_minus(z0)), x1)) -> c3(+'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_*(z0, z1)), x1)) -> c3(+'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(x0), 0)) -> c3(+'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) ENCARG(cons_+(cons_*(x0, 0), x2)) -> c3(+'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_p(z0)), x2)) -> c3(+'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_s(z0)), x2)) -> c3(+'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_+(z0, z1)), x2)) -> c3(+'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_minus(z0)), x2)) -> c3(+'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_*(z0, z1)), x2)) -> c3(+'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(0, x1), x2)) -> c3(+'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_p(z0), x1), x2)) -> c3(+'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_s(z0), x1), x2)) -> c3(+'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_+(z0, z1), x1), x2)) -> c3(+'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_minus(z0), x1), x2)) -> c3(+'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_*(z0, z1), x1), x2)) -> c3(+'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, x1), 0)) -> c3(+'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1))) ENCARG(cons_+(cons_p(z0), 0)) -> c3(+'(p(encArg(z0)), 0), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_s(z0), 0)) -> c3(+'(s(encArg(z0)), 0), ENCARG(cons_s(z0))) ENCARG(cons_+(0, 0)) -> c3(+'(0, 0)) ENCARG(cons_minus(cons_+(x0, 0))) -> c4(MINUS(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_minus(cons_+(x0, cons_p(z0)))) -> c4(MINUS(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_minus(cons_+(x0, cons_s(z0)))) -> c4(MINUS(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_minus(cons_+(x0, cons_+(z0, z1)))) -> c4(MINUS(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_+(x0, cons_minus(z0)))) -> c4(MINUS(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_+(x0, cons_*(z0, z1)))) -> c4(MINUS(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_+(0, x1))) -> c4(MINUS(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_minus(cons_+(cons_p(z0), x1))) -> c4(MINUS(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_minus(cons_+(cons_s(z0), x1))) -> c4(MINUS(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_minus(cons_+(cons_+(z0, z1), x1))) -> c4(MINUS(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_+(cons_minus(z0), x1))) -> c4(MINUS(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_minus(cons_+(cons_*(z0, z1), x1))) -> c4(MINUS(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_minus(cons_minus(cons_p(z0)))) -> c4(MINUS(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_minus(cons_minus(cons_s(z0)))) -> c4(MINUS(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_minus(cons_minus(cons_+(z0, z1)))) -> c4(MINUS(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_minus(cons_minus(cons_minus(z0)))) -> c4(MINUS(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_minus(cons_minus(cons_*(z0, z1)))) -> c4(MINUS(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_minus(cons_minus(0))) -> c11(MINUS(minus(0))) ENCARG(cons_minus(cons_minus(0))) -> c11(ENCARG(cons_minus(0))) ENCARG(cons_minus(cons_*(x0, 0))) -> c4(MINUS(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_minus(cons_*(x0, cons_p(z0)))) -> c4(MINUS(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_minus(cons_*(x0, cons_s(z0)))) -> c4(MINUS(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_minus(cons_*(x0, cons_+(z0, z1)))) -> c4(MINUS(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_*(x0, cons_minus(z0)))) -> c4(MINUS(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_*(x0, cons_*(z0, z1)))) -> c4(MINUS(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_*(0, x1))) -> c4(MINUS(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_minus(cons_*(cons_p(z0), x1))) -> c4(MINUS(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_minus(cons_*(cons_s(z0), x1))) -> c4(MINUS(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_minus(cons_*(cons_+(z0, z1), x1))) -> c4(MINUS(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_*(cons_minus(z0), x1))) -> c4(MINUS(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_minus(cons_*(cons_*(z0, z1), x1))) -> c4(MINUS(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1, c3_1, c11_1 ---------------------------------------- (231) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_*(x0, cons_p(z0))) -> c5(*'(encArg(x0), p(encArg(z0))), ENCARG(x0), ENCARG(cons_p(z0))) by ENCARG(cons_*(x0, cons_p(0))) -> c5(*'(encArg(x0), p(0)), ENCARG(x0), ENCARG(cons_p(0))) ENCARG(cons_*(x0, cons_p(cons_p(z0)))) -> c5(*'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_*(x0, cons_p(cons_s(z0)))) -> c5(*'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_*(x0, cons_p(cons_+(z0, z1)))) -> c5(*'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_p(cons_minus(z0)))) -> c5(*'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_*(x0, cons_p(cons_*(z0, z1)))) -> c5(*'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_*(0, cons_p(x1))) -> c5(*'(0, p(encArg(x1))), ENCARG(0), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_p(z0), cons_p(x1))) -> c5(*'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_s(z0), cons_p(x1))) -> c5(*'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_p(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_minus(z0), cons_p(x1))) -> c5(*'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_p(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ---------------------------------------- (232) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_+(cons_minus(0), x1)) -> c3(+'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_p(z0)), x1)) -> c3(+'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_s(z0)), x1)) -> c3(+'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_+(z0, z1)), x1)) -> c3(+'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_minus(z0)), x1)) -> c3(+'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_*(z0, z1)), x1)) -> c3(+'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(x0), 0)) -> c3(+'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) ENCARG(cons_+(cons_*(x0, 0), x2)) -> c3(+'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_p(z0)), x2)) -> c3(+'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_s(z0)), x2)) -> c3(+'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_+(z0, z1)), x2)) -> c3(+'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_minus(z0)), x2)) -> c3(+'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_*(z0, z1)), x2)) -> c3(+'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(0, x1), x2)) -> c3(+'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_p(z0), x1), x2)) -> c3(+'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_s(z0), x1), x2)) -> c3(+'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_+(z0, z1), x1), x2)) -> c3(+'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_minus(z0), x1), x2)) -> c3(+'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_*(z0, z1), x1), x2)) -> c3(+'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, x1), 0)) -> c3(+'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1))) ENCARG(cons_+(cons_p(z0), 0)) -> c3(+'(p(encArg(z0)), 0), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_s(z0), 0)) -> c3(+'(s(encArg(z0)), 0), ENCARG(cons_s(z0))) ENCARG(cons_+(0, 0)) -> c3(+'(0, 0)) ENCARG(cons_minus(cons_+(x0, 0))) -> c4(MINUS(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_minus(cons_+(x0, cons_p(z0)))) -> c4(MINUS(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_minus(cons_+(x0, cons_s(z0)))) -> c4(MINUS(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_minus(cons_+(x0, cons_+(z0, z1)))) -> c4(MINUS(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_+(x0, cons_minus(z0)))) -> c4(MINUS(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_+(x0, cons_*(z0, z1)))) -> c4(MINUS(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_+(0, x1))) -> c4(MINUS(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_minus(cons_+(cons_p(z0), x1))) -> c4(MINUS(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_minus(cons_+(cons_s(z0), x1))) -> c4(MINUS(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_minus(cons_+(cons_+(z0, z1), x1))) -> c4(MINUS(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_+(cons_minus(z0), x1))) -> c4(MINUS(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_minus(cons_+(cons_*(z0, z1), x1))) -> c4(MINUS(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_minus(cons_minus(cons_p(z0)))) -> c4(MINUS(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_minus(cons_minus(cons_s(z0)))) -> c4(MINUS(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_minus(cons_minus(cons_+(z0, z1)))) -> c4(MINUS(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_minus(cons_minus(cons_minus(z0)))) -> c4(MINUS(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_minus(cons_minus(cons_*(z0, z1)))) -> c4(MINUS(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_minus(cons_minus(0))) -> c11(MINUS(minus(0))) ENCARG(cons_minus(cons_minus(0))) -> c11(ENCARG(cons_minus(0))) ENCARG(cons_minus(cons_*(x0, 0))) -> c4(MINUS(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_minus(cons_*(x0, cons_p(z0)))) -> c4(MINUS(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_minus(cons_*(x0, cons_s(z0)))) -> c4(MINUS(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_minus(cons_*(x0, cons_+(z0, z1)))) -> c4(MINUS(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_*(x0, cons_minus(z0)))) -> c4(MINUS(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_*(x0, cons_*(z0, z1)))) -> c4(MINUS(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_*(0, x1))) -> c4(MINUS(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_minus(cons_*(cons_p(z0), x1))) -> c4(MINUS(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_minus(cons_*(cons_s(z0), x1))) -> c4(MINUS(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_minus(cons_*(cons_+(z0, z1), x1))) -> c4(MINUS(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_*(cons_minus(z0), x1))) -> c4(MINUS(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_minus(cons_*(cons_*(z0, z1), x1))) -> c4(MINUS(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_*(x0, cons_p(0))) -> c5(*'(encArg(x0), p(0)), ENCARG(x0), ENCARG(cons_p(0))) ENCARG(cons_*(x0, cons_p(cons_p(z0)))) -> c5(*'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_*(x0, cons_p(cons_s(z0)))) -> c5(*'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_*(x0, cons_p(cons_+(z0, z1)))) -> c5(*'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_p(cons_minus(z0)))) -> c5(*'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_*(x0, cons_p(cons_*(z0, z1)))) -> c5(*'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_*(0, cons_p(x1))) -> c5(*'(0, p(encArg(x1))), ENCARG(0), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_p(z0), cons_p(x1))) -> c5(*'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_s(z0), cons_p(x1))) -> c5(*'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_p(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_minus(z0), cons_p(x1))) -> c5(*'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_p(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1, c3_1, c11_1 ---------------------------------------- (233) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (234) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_+(cons_minus(0), x1)) -> c3(+'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_p(z0)), x1)) -> c3(+'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_s(z0)), x1)) -> c3(+'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_+(z0, z1)), x1)) -> c3(+'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_minus(z0)), x1)) -> c3(+'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_*(z0, z1)), x1)) -> c3(+'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(x0), 0)) -> c3(+'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) ENCARG(cons_+(cons_*(x0, 0), x2)) -> c3(+'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_p(z0)), x2)) -> c3(+'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_s(z0)), x2)) -> c3(+'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_+(z0, z1)), x2)) -> c3(+'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_minus(z0)), x2)) -> c3(+'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_*(z0, z1)), x2)) -> c3(+'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(0, x1), x2)) -> c3(+'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_p(z0), x1), x2)) -> c3(+'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_s(z0), x1), x2)) -> c3(+'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_+(z0, z1), x1), x2)) -> c3(+'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_minus(z0), x1), x2)) -> c3(+'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_*(z0, z1), x1), x2)) -> c3(+'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, x1), 0)) -> c3(+'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1))) ENCARG(cons_+(cons_p(z0), 0)) -> c3(+'(p(encArg(z0)), 0), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_s(z0), 0)) -> c3(+'(s(encArg(z0)), 0), ENCARG(cons_s(z0))) ENCARG(cons_+(0, 0)) -> c3(+'(0, 0)) ENCARG(cons_minus(cons_+(x0, 0))) -> c4(MINUS(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_minus(cons_+(x0, cons_p(z0)))) -> c4(MINUS(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_minus(cons_+(x0, cons_s(z0)))) -> c4(MINUS(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_minus(cons_+(x0, cons_+(z0, z1)))) -> c4(MINUS(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_+(x0, cons_minus(z0)))) -> c4(MINUS(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_+(x0, cons_*(z0, z1)))) -> c4(MINUS(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_+(0, x1))) -> c4(MINUS(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_minus(cons_+(cons_p(z0), x1))) -> c4(MINUS(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_minus(cons_+(cons_s(z0), x1))) -> c4(MINUS(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_minus(cons_+(cons_+(z0, z1), x1))) -> c4(MINUS(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_+(cons_minus(z0), x1))) -> c4(MINUS(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_minus(cons_+(cons_*(z0, z1), x1))) -> c4(MINUS(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_minus(cons_minus(cons_p(z0)))) -> c4(MINUS(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_minus(cons_minus(cons_s(z0)))) -> c4(MINUS(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_minus(cons_minus(cons_+(z0, z1)))) -> c4(MINUS(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_minus(cons_minus(cons_minus(z0)))) -> c4(MINUS(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_minus(cons_minus(cons_*(z0, z1)))) -> c4(MINUS(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_minus(cons_minus(0))) -> c11(MINUS(minus(0))) ENCARG(cons_minus(cons_minus(0))) -> c11(ENCARG(cons_minus(0))) ENCARG(cons_minus(cons_*(x0, 0))) -> c4(MINUS(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_minus(cons_*(x0, cons_p(z0)))) -> c4(MINUS(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_minus(cons_*(x0, cons_s(z0)))) -> c4(MINUS(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_minus(cons_*(x0, cons_+(z0, z1)))) -> c4(MINUS(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_*(x0, cons_minus(z0)))) -> c4(MINUS(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_*(x0, cons_*(z0, z1)))) -> c4(MINUS(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_*(0, x1))) -> c4(MINUS(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_minus(cons_*(cons_p(z0), x1))) -> c4(MINUS(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_minus(cons_*(cons_s(z0), x1))) -> c4(MINUS(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_minus(cons_*(cons_+(z0, z1), x1))) -> c4(MINUS(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_*(cons_minus(z0), x1))) -> c4(MINUS(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_minus(cons_*(cons_*(z0, z1), x1))) -> c4(MINUS(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_*(x0, cons_p(cons_p(z0)))) -> c5(*'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_*(x0, cons_p(cons_s(z0)))) -> c5(*'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_*(x0, cons_p(cons_+(z0, z1)))) -> c5(*'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_p(cons_minus(z0)))) -> c5(*'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_*(x0, cons_p(cons_*(z0, z1)))) -> c5(*'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_p(x1))) -> c5(*'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_s(z0), cons_p(x1))) -> c5(*'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_p(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_minus(z0), cons_p(x1))) -> c5(*'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_p(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_p(0))) -> c5(*'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_p(x1))) -> c5(ENCARG(cons_p(x1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1, c3_1, c11_1 ---------------------------------------- (235) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_*(x0, cons_s(z0))) -> c5(*'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) by ENCARG(cons_*(x0, cons_s(0))) -> c5(*'(encArg(x0), s(0)), ENCARG(x0), ENCARG(cons_s(0))) ENCARG(cons_*(x0, cons_s(cons_p(z0)))) -> c5(*'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_*(x0, cons_s(cons_s(z0)))) -> c5(*'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_*(x0, cons_s(cons_+(z0, z1)))) -> c5(*'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_s(cons_minus(z0)))) -> c5(*'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_*(x0, cons_s(cons_*(z0, z1)))) -> c5(*'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_*(0, cons_s(x1))) -> c5(*'(0, s(encArg(x1))), ENCARG(0), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_p(z0), cons_s(x1))) -> c5(*'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_s(z0), cons_s(x1))) -> c5(*'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_s(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_minus(z0), cons_s(x1))) -> c5(*'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_s(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ---------------------------------------- (236) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_+(cons_minus(0), x1)) -> c3(+'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_p(z0)), x1)) -> c3(+'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_s(z0)), x1)) -> c3(+'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_+(z0, z1)), x1)) -> c3(+'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_minus(z0)), x1)) -> c3(+'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_*(z0, z1)), x1)) -> c3(+'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(x0), 0)) -> c3(+'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) ENCARG(cons_+(cons_*(x0, 0), x2)) -> c3(+'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_p(z0)), x2)) -> c3(+'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_s(z0)), x2)) -> c3(+'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_+(z0, z1)), x2)) -> c3(+'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_minus(z0)), x2)) -> c3(+'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_*(z0, z1)), x2)) -> c3(+'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(0, x1), x2)) -> c3(+'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_p(z0), x1), x2)) -> c3(+'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_s(z0), x1), x2)) -> c3(+'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_+(z0, z1), x1), x2)) -> c3(+'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_minus(z0), x1), x2)) -> c3(+'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_*(z0, z1), x1), x2)) -> c3(+'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, x1), 0)) -> c3(+'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1))) ENCARG(cons_+(cons_p(z0), 0)) -> c3(+'(p(encArg(z0)), 0), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_s(z0), 0)) -> c3(+'(s(encArg(z0)), 0), ENCARG(cons_s(z0))) ENCARG(cons_+(0, 0)) -> c3(+'(0, 0)) ENCARG(cons_minus(cons_+(x0, 0))) -> c4(MINUS(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_minus(cons_+(x0, cons_p(z0)))) -> c4(MINUS(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_minus(cons_+(x0, cons_s(z0)))) -> c4(MINUS(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_minus(cons_+(x0, cons_+(z0, z1)))) -> c4(MINUS(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_+(x0, cons_minus(z0)))) -> c4(MINUS(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_+(x0, cons_*(z0, z1)))) -> c4(MINUS(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_+(0, x1))) -> c4(MINUS(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_minus(cons_+(cons_p(z0), x1))) -> c4(MINUS(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_minus(cons_+(cons_s(z0), x1))) -> c4(MINUS(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_minus(cons_+(cons_+(z0, z1), x1))) -> c4(MINUS(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_+(cons_minus(z0), x1))) -> c4(MINUS(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_minus(cons_+(cons_*(z0, z1), x1))) -> c4(MINUS(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_minus(cons_minus(cons_p(z0)))) -> c4(MINUS(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_minus(cons_minus(cons_s(z0)))) -> c4(MINUS(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_minus(cons_minus(cons_+(z0, z1)))) -> c4(MINUS(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_minus(cons_minus(cons_minus(z0)))) -> c4(MINUS(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_minus(cons_minus(cons_*(z0, z1)))) -> c4(MINUS(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_minus(cons_minus(0))) -> c11(MINUS(minus(0))) ENCARG(cons_minus(cons_minus(0))) -> c11(ENCARG(cons_minus(0))) ENCARG(cons_minus(cons_*(x0, 0))) -> c4(MINUS(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_minus(cons_*(x0, cons_p(z0)))) -> c4(MINUS(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_minus(cons_*(x0, cons_s(z0)))) -> c4(MINUS(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_minus(cons_*(x0, cons_+(z0, z1)))) -> c4(MINUS(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_*(x0, cons_minus(z0)))) -> c4(MINUS(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_*(x0, cons_*(z0, z1)))) -> c4(MINUS(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_*(0, x1))) -> c4(MINUS(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_minus(cons_*(cons_p(z0), x1))) -> c4(MINUS(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_minus(cons_*(cons_s(z0), x1))) -> c4(MINUS(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_minus(cons_*(cons_+(z0, z1), x1))) -> c4(MINUS(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_*(cons_minus(z0), x1))) -> c4(MINUS(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_minus(cons_*(cons_*(z0, z1), x1))) -> c4(MINUS(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_*(x0, cons_p(cons_p(z0)))) -> c5(*'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_*(x0, cons_p(cons_s(z0)))) -> c5(*'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_*(x0, cons_p(cons_+(z0, z1)))) -> c5(*'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_p(cons_minus(z0)))) -> c5(*'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_*(x0, cons_p(cons_*(z0, z1)))) -> c5(*'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_p(x1))) -> c5(*'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_s(z0), cons_p(x1))) -> c5(*'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_p(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_minus(z0), cons_p(x1))) -> c5(*'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_p(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_p(0))) -> c5(*'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_p(x1))) -> c5(ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_s(0))) -> c5(*'(encArg(x0), s(0)), ENCARG(x0), ENCARG(cons_s(0))) ENCARG(cons_*(x0, cons_s(cons_p(z0)))) -> c5(*'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_*(x0, cons_s(cons_s(z0)))) -> c5(*'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_*(x0, cons_s(cons_+(z0, z1)))) -> c5(*'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_s(cons_minus(z0)))) -> c5(*'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_*(x0, cons_s(cons_*(z0, z1)))) -> c5(*'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_*(0, cons_s(x1))) -> c5(*'(0, s(encArg(x1))), ENCARG(0), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_p(z0), cons_s(x1))) -> c5(*'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_s(z0), cons_s(x1))) -> c5(*'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_s(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_minus(z0), cons_s(x1))) -> c5(*'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_s(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1, c3_1, c11_1 ---------------------------------------- (237) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (238) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_+(cons_minus(0), x1)) -> c3(+'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_p(z0)), x1)) -> c3(+'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_s(z0)), x1)) -> c3(+'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_+(z0, z1)), x1)) -> c3(+'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_minus(z0)), x1)) -> c3(+'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_*(z0, z1)), x1)) -> c3(+'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(x0), 0)) -> c3(+'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) ENCARG(cons_+(cons_*(x0, 0), x2)) -> c3(+'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_p(z0)), x2)) -> c3(+'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_s(z0)), x2)) -> c3(+'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_+(z0, z1)), x2)) -> c3(+'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_minus(z0)), x2)) -> c3(+'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_*(z0, z1)), x2)) -> c3(+'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(0, x1), x2)) -> c3(+'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_p(z0), x1), x2)) -> c3(+'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_s(z0), x1), x2)) -> c3(+'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_+(z0, z1), x1), x2)) -> c3(+'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_minus(z0), x1), x2)) -> c3(+'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_*(z0, z1), x1), x2)) -> c3(+'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, x1), 0)) -> c3(+'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1))) ENCARG(cons_+(cons_p(z0), 0)) -> c3(+'(p(encArg(z0)), 0), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_s(z0), 0)) -> c3(+'(s(encArg(z0)), 0), ENCARG(cons_s(z0))) ENCARG(cons_+(0, 0)) -> c3(+'(0, 0)) ENCARG(cons_minus(cons_+(x0, 0))) -> c4(MINUS(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_minus(cons_+(x0, cons_p(z0)))) -> c4(MINUS(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_minus(cons_+(x0, cons_s(z0)))) -> c4(MINUS(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_minus(cons_+(x0, cons_+(z0, z1)))) -> c4(MINUS(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_+(x0, cons_minus(z0)))) -> c4(MINUS(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_+(x0, cons_*(z0, z1)))) -> c4(MINUS(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_+(0, x1))) -> c4(MINUS(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_minus(cons_+(cons_p(z0), x1))) -> c4(MINUS(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_minus(cons_+(cons_s(z0), x1))) -> c4(MINUS(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_minus(cons_+(cons_+(z0, z1), x1))) -> c4(MINUS(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_+(cons_minus(z0), x1))) -> c4(MINUS(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_minus(cons_+(cons_*(z0, z1), x1))) -> c4(MINUS(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_minus(cons_minus(cons_p(z0)))) -> c4(MINUS(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_minus(cons_minus(cons_s(z0)))) -> c4(MINUS(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_minus(cons_minus(cons_+(z0, z1)))) -> c4(MINUS(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_minus(cons_minus(cons_minus(z0)))) -> c4(MINUS(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_minus(cons_minus(cons_*(z0, z1)))) -> c4(MINUS(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_minus(cons_minus(0))) -> c11(MINUS(minus(0))) ENCARG(cons_minus(cons_minus(0))) -> c11(ENCARG(cons_minus(0))) ENCARG(cons_minus(cons_*(x0, 0))) -> c4(MINUS(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_minus(cons_*(x0, cons_p(z0)))) -> c4(MINUS(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_minus(cons_*(x0, cons_s(z0)))) -> c4(MINUS(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_minus(cons_*(x0, cons_+(z0, z1)))) -> c4(MINUS(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_*(x0, cons_minus(z0)))) -> c4(MINUS(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_*(x0, cons_*(z0, z1)))) -> c4(MINUS(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_*(0, x1))) -> c4(MINUS(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_minus(cons_*(cons_p(z0), x1))) -> c4(MINUS(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_minus(cons_*(cons_s(z0), x1))) -> c4(MINUS(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_minus(cons_*(cons_+(z0, z1), x1))) -> c4(MINUS(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_*(cons_minus(z0), x1))) -> c4(MINUS(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_minus(cons_*(cons_*(z0, z1), x1))) -> c4(MINUS(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_*(x0, cons_p(cons_p(z0)))) -> c5(*'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_*(x0, cons_p(cons_s(z0)))) -> c5(*'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_*(x0, cons_p(cons_+(z0, z1)))) -> c5(*'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_p(cons_minus(z0)))) -> c5(*'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_*(x0, cons_p(cons_*(z0, z1)))) -> c5(*'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_p(x1))) -> c5(*'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_s(z0), cons_p(x1))) -> c5(*'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_p(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_minus(z0), cons_p(x1))) -> c5(*'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_p(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_p(0))) -> c5(*'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_p(x1))) -> c5(ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_s(cons_p(z0)))) -> c5(*'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_*(x0, cons_s(cons_s(z0)))) -> c5(*'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_*(x0, cons_s(cons_+(z0, z1)))) -> c5(*'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_s(cons_minus(z0)))) -> c5(*'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_*(x0, cons_s(cons_*(z0, z1)))) -> c5(*'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_s(x1))) -> c5(*'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_s(z0), cons_s(x1))) -> c5(*'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_s(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_minus(z0), cons_s(x1))) -> c5(*'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_s(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(x0, cons_s(0))) -> c5(*'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_s(x1))) -> c5(ENCARG(cons_s(x1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1, c3_1, c11_1 ---------------------------------------- (239) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_*(x0, cons_+(z0, z1))) -> c5(*'(encArg(x0), +(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_+(z0, z1))) by ENCARG(cons_*(x0, cons_+(x1, 0))) -> c5(*'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_*(x0, cons_+(x1, cons_p(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_s(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_+(z0, z1)))) -> c5(*'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_+(x1, cons_minus(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_*(z0, z1)))) -> c5(*'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_*(x0, cons_+(0, x2))) -> c5(*'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_*(x0, cons_+(cons_p(z0), x2))) -> c5(*'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_s(z0), x2))) -> c5(*'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_+(z0, z1), x2))) -> c5(*'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_*(x0, cons_+(cons_minus(z0), x2))) -> c5(*'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_*(z0, z1), x2))) -> c5(*'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_*(0, cons_+(x1, x2))) -> c5(*'(0, +(encArg(x1), encArg(x2))), ENCARG(0), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_p(z0), cons_+(x1, x2))) -> c5(*'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_s(z0), cons_+(x1, x2))) -> c5(*'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_+(z0, z1), cons_+(x1, x2))) -> c5(*'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_minus(z0), cons_+(x1, x2))) -> c5(*'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_*(z0, z1), cons_+(x1, x2))) -> c5(*'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ---------------------------------------- (240) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_+(cons_minus(0), x1)) -> c3(+'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_p(z0)), x1)) -> c3(+'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_s(z0)), x1)) -> c3(+'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_+(z0, z1)), x1)) -> c3(+'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_minus(z0)), x1)) -> c3(+'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_*(z0, z1)), x1)) -> c3(+'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(x0), 0)) -> c3(+'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) ENCARG(cons_+(cons_*(x0, 0), x2)) -> c3(+'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_p(z0)), x2)) -> c3(+'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_s(z0)), x2)) -> c3(+'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_+(z0, z1)), x2)) -> c3(+'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_minus(z0)), x2)) -> c3(+'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_*(z0, z1)), x2)) -> c3(+'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(0, x1), x2)) -> c3(+'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_p(z0), x1), x2)) -> c3(+'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_s(z0), x1), x2)) -> c3(+'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_+(z0, z1), x1), x2)) -> c3(+'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_minus(z0), x1), x2)) -> c3(+'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_*(z0, z1), x1), x2)) -> c3(+'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, x1), 0)) -> c3(+'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1))) ENCARG(cons_+(cons_p(z0), 0)) -> c3(+'(p(encArg(z0)), 0), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_s(z0), 0)) -> c3(+'(s(encArg(z0)), 0), ENCARG(cons_s(z0))) ENCARG(cons_+(0, 0)) -> c3(+'(0, 0)) ENCARG(cons_minus(cons_+(x0, 0))) -> c4(MINUS(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_minus(cons_+(x0, cons_p(z0)))) -> c4(MINUS(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_minus(cons_+(x0, cons_s(z0)))) -> c4(MINUS(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_minus(cons_+(x0, cons_+(z0, z1)))) -> c4(MINUS(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_+(x0, cons_minus(z0)))) -> c4(MINUS(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_+(x0, cons_*(z0, z1)))) -> c4(MINUS(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_+(0, x1))) -> c4(MINUS(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_minus(cons_+(cons_p(z0), x1))) -> c4(MINUS(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_minus(cons_+(cons_s(z0), x1))) -> c4(MINUS(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_minus(cons_+(cons_+(z0, z1), x1))) -> c4(MINUS(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_+(cons_minus(z0), x1))) -> c4(MINUS(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_minus(cons_+(cons_*(z0, z1), x1))) -> c4(MINUS(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_minus(cons_minus(cons_p(z0)))) -> c4(MINUS(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_minus(cons_minus(cons_s(z0)))) -> c4(MINUS(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_minus(cons_minus(cons_+(z0, z1)))) -> c4(MINUS(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_minus(cons_minus(cons_minus(z0)))) -> c4(MINUS(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_minus(cons_minus(cons_*(z0, z1)))) -> c4(MINUS(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_minus(cons_minus(0))) -> c11(MINUS(minus(0))) ENCARG(cons_minus(cons_minus(0))) -> c11(ENCARG(cons_minus(0))) ENCARG(cons_minus(cons_*(x0, 0))) -> c4(MINUS(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_minus(cons_*(x0, cons_p(z0)))) -> c4(MINUS(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_minus(cons_*(x0, cons_s(z0)))) -> c4(MINUS(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_minus(cons_*(x0, cons_+(z0, z1)))) -> c4(MINUS(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_*(x0, cons_minus(z0)))) -> c4(MINUS(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_*(x0, cons_*(z0, z1)))) -> c4(MINUS(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_*(0, x1))) -> c4(MINUS(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_minus(cons_*(cons_p(z0), x1))) -> c4(MINUS(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_minus(cons_*(cons_s(z0), x1))) -> c4(MINUS(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_minus(cons_*(cons_+(z0, z1), x1))) -> c4(MINUS(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_*(cons_minus(z0), x1))) -> c4(MINUS(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_minus(cons_*(cons_*(z0, z1), x1))) -> c4(MINUS(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_*(x0, cons_p(cons_p(z0)))) -> c5(*'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_*(x0, cons_p(cons_s(z0)))) -> c5(*'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_*(x0, cons_p(cons_+(z0, z1)))) -> c5(*'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_p(cons_minus(z0)))) -> c5(*'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_*(x0, cons_p(cons_*(z0, z1)))) -> c5(*'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_p(x1))) -> c5(*'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_s(z0), cons_p(x1))) -> c5(*'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_p(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_minus(z0), cons_p(x1))) -> c5(*'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_p(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_p(0))) -> c5(*'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_p(x1))) -> c5(ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_s(cons_p(z0)))) -> c5(*'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_*(x0, cons_s(cons_s(z0)))) -> c5(*'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_*(x0, cons_s(cons_+(z0, z1)))) -> c5(*'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_s(cons_minus(z0)))) -> c5(*'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_*(x0, cons_s(cons_*(z0, z1)))) -> c5(*'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_s(x1))) -> c5(*'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_s(z0), cons_s(x1))) -> c5(*'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_s(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_minus(z0), cons_s(x1))) -> c5(*'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_s(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(x0, cons_s(0))) -> c5(*'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_s(x1))) -> c5(ENCARG(cons_s(x1))) ENCARG(cons_*(x0, cons_+(x1, 0))) -> c5(*'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_*(x0, cons_+(x1, cons_p(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_s(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_+(z0, z1)))) -> c5(*'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_+(x1, cons_minus(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_*(z0, z1)))) -> c5(*'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_*(x0, cons_+(0, x2))) -> c5(*'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_*(x0, cons_+(cons_p(z0), x2))) -> c5(*'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_s(z0), x2))) -> c5(*'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_+(z0, z1), x2))) -> c5(*'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_*(x0, cons_+(cons_minus(z0), x2))) -> c5(*'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_*(z0, z1), x2))) -> c5(*'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_*(0, cons_+(x1, x2))) -> c5(*'(0, +(encArg(x1), encArg(x2))), ENCARG(0), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_p(z0), cons_+(x1, x2))) -> c5(*'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_s(z0), cons_+(x1, x2))) -> c5(*'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_+(z0, z1), cons_+(x1, x2))) -> c5(*'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_minus(z0), cons_+(x1, x2))) -> c5(*'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_*(z0, z1), cons_+(x1, x2))) -> c5(*'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1, c3_1, c11_1 ---------------------------------------- (241) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (242) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_+(cons_minus(0), x1)) -> c3(+'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_p(z0)), x1)) -> c3(+'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_s(z0)), x1)) -> c3(+'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_+(z0, z1)), x1)) -> c3(+'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_minus(z0)), x1)) -> c3(+'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_*(z0, z1)), x1)) -> c3(+'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(x0), 0)) -> c3(+'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) ENCARG(cons_+(cons_*(x0, 0), x2)) -> c3(+'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_p(z0)), x2)) -> c3(+'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_s(z0)), x2)) -> c3(+'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_+(z0, z1)), x2)) -> c3(+'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_minus(z0)), x2)) -> c3(+'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_*(z0, z1)), x2)) -> c3(+'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(0, x1), x2)) -> c3(+'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_p(z0), x1), x2)) -> c3(+'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_s(z0), x1), x2)) -> c3(+'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_+(z0, z1), x1), x2)) -> c3(+'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_minus(z0), x1), x2)) -> c3(+'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_*(z0, z1), x1), x2)) -> c3(+'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, x1), 0)) -> c3(+'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1))) ENCARG(cons_+(cons_p(z0), 0)) -> c3(+'(p(encArg(z0)), 0), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_s(z0), 0)) -> c3(+'(s(encArg(z0)), 0), ENCARG(cons_s(z0))) ENCARG(cons_+(0, 0)) -> c3(+'(0, 0)) ENCARG(cons_minus(cons_+(x0, 0))) -> c4(MINUS(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_minus(cons_+(x0, cons_p(z0)))) -> c4(MINUS(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_minus(cons_+(x0, cons_s(z0)))) -> c4(MINUS(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_minus(cons_+(x0, cons_+(z0, z1)))) -> c4(MINUS(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_+(x0, cons_minus(z0)))) -> c4(MINUS(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_+(x0, cons_*(z0, z1)))) -> c4(MINUS(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_+(0, x1))) -> c4(MINUS(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_minus(cons_+(cons_p(z0), x1))) -> c4(MINUS(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_minus(cons_+(cons_s(z0), x1))) -> c4(MINUS(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_minus(cons_+(cons_+(z0, z1), x1))) -> c4(MINUS(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_+(cons_minus(z0), x1))) -> c4(MINUS(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_minus(cons_+(cons_*(z0, z1), x1))) -> c4(MINUS(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_minus(cons_minus(cons_p(z0)))) -> c4(MINUS(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_minus(cons_minus(cons_s(z0)))) -> c4(MINUS(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_minus(cons_minus(cons_+(z0, z1)))) -> c4(MINUS(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_minus(cons_minus(cons_minus(z0)))) -> c4(MINUS(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_minus(cons_minus(cons_*(z0, z1)))) -> c4(MINUS(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_minus(cons_minus(0))) -> c11(MINUS(minus(0))) ENCARG(cons_minus(cons_minus(0))) -> c11(ENCARG(cons_minus(0))) ENCARG(cons_minus(cons_*(x0, 0))) -> c4(MINUS(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_minus(cons_*(x0, cons_p(z0)))) -> c4(MINUS(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_minus(cons_*(x0, cons_s(z0)))) -> c4(MINUS(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_minus(cons_*(x0, cons_+(z0, z1)))) -> c4(MINUS(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_*(x0, cons_minus(z0)))) -> c4(MINUS(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_*(x0, cons_*(z0, z1)))) -> c4(MINUS(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_*(0, x1))) -> c4(MINUS(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_minus(cons_*(cons_p(z0), x1))) -> c4(MINUS(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_minus(cons_*(cons_s(z0), x1))) -> c4(MINUS(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_minus(cons_*(cons_+(z0, z1), x1))) -> c4(MINUS(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_*(cons_minus(z0), x1))) -> c4(MINUS(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_minus(cons_*(cons_*(z0, z1), x1))) -> c4(MINUS(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_*(x0, cons_p(cons_p(z0)))) -> c5(*'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_*(x0, cons_p(cons_s(z0)))) -> c5(*'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_*(x0, cons_p(cons_+(z0, z1)))) -> c5(*'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_p(cons_minus(z0)))) -> c5(*'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_*(x0, cons_p(cons_*(z0, z1)))) -> c5(*'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_p(x1))) -> c5(*'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_s(z0), cons_p(x1))) -> c5(*'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_p(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_minus(z0), cons_p(x1))) -> c5(*'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_p(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_p(0))) -> c5(*'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_p(x1))) -> c5(ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_s(cons_p(z0)))) -> c5(*'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_*(x0, cons_s(cons_s(z0)))) -> c5(*'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_*(x0, cons_s(cons_+(z0, z1)))) -> c5(*'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_s(cons_minus(z0)))) -> c5(*'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_*(x0, cons_s(cons_*(z0, z1)))) -> c5(*'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_s(x1))) -> c5(*'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_s(z0), cons_s(x1))) -> c5(*'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_s(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_minus(z0), cons_s(x1))) -> c5(*'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_s(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(x0, cons_s(0))) -> c5(*'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_s(x1))) -> c5(ENCARG(cons_s(x1))) ENCARG(cons_*(x0, cons_+(x1, 0))) -> c5(*'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_*(x0, cons_+(x1, cons_p(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_s(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_+(z0, z1)))) -> c5(*'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_+(x1, cons_minus(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_*(z0, z1)))) -> c5(*'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_*(x0, cons_+(0, x2))) -> c5(*'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_*(x0, cons_+(cons_p(z0), x2))) -> c5(*'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_s(z0), x2))) -> c5(*'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_+(z0, z1), x2))) -> c5(*'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_*(x0, cons_+(cons_minus(z0), x2))) -> c5(*'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_*(z0, z1), x2))) -> c5(*'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_*(cons_p(z0), cons_+(x1, x2))) -> c5(*'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_s(z0), cons_+(x1, x2))) -> c5(*'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_+(z0, z1), cons_+(x1, x2))) -> c5(*'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_minus(z0), cons_+(x1, x2))) -> c5(*'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_*(z0, z1), cons_+(x1, x2))) -> c5(*'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(0, cons_+(x1, x2))) -> c5(ENCARG(cons_+(x1, x2))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1, c3_1, c11_1 ---------------------------------------- (243) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_*(x0, cons_minus(z0))) -> c5(*'(encArg(x0), minus(encArg(z0))), ENCARG(x0), ENCARG(cons_minus(z0))) by ENCARG(cons_*(x0, cons_minus(0))) -> c5(*'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_*(x0, cons_minus(cons_p(z0)))) -> c5(*'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_*(x0, cons_minus(cons_s(z0)))) -> c5(*'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_*(x0, cons_minus(cons_+(z0, z1)))) -> c5(*'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_minus(cons_minus(z0)))) -> c5(*'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_*(x0, cons_minus(cons_*(z0, z1)))) -> c5(*'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_*(0, cons_minus(x1))) -> c5(*'(0, minus(encArg(x1))), ENCARG(0), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_p(z0), cons_minus(x1))) -> c5(*'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_s(z0), cons_minus(x1))) -> c5(*'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_minus(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_minus(z0), cons_minus(x1))) -> c5(*'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_minus(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ---------------------------------------- (244) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_+(cons_minus(0), x1)) -> c3(+'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_p(z0)), x1)) -> c3(+'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_s(z0)), x1)) -> c3(+'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_+(z0, z1)), x1)) -> c3(+'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_minus(z0)), x1)) -> c3(+'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_*(z0, z1)), x1)) -> c3(+'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(x0), 0)) -> c3(+'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) ENCARG(cons_+(cons_*(x0, 0), x2)) -> c3(+'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_p(z0)), x2)) -> c3(+'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_s(z0)), x2)) -> c3(+'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_+(z0, z1)), x2)) -> c3(+'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_minus(z0)), x2)) -> c3(+'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_*(z0, z1)), x2)) -> c3(+'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(0, x1), x2)) -> c3(+'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_p(z0), x1), x2)) -> c3(+'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_s(z0), x1), x2)) -> c3(+'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_+(z0, z1), x1), x2)) -> c3(+'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_minus(z0), x1), x2)) -> c3(+'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_*(z0, z1), x1), x2)) -> c3(+'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, x1), 0)) -> c3(+'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1))) ENCARG(cons_+(cons_p(z0), 0)) -> c3(+'(p(encArg(z0)), 0), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_s(z0), 0)) -> c3(+'(s(encArg(z0)), 0), ENCARG(cons_s(z0))) ENCARG(cons_+(0, 0)) -> c3(+'(0, 0)) ENCARG(cons_minus(cons_+(x0, 0))) -> c4(MINUS(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_minus(cons_+(x0, cons_p(z0)))) -> c4(MINUS(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_minus(cons_+(x0, cons_s(z0)))) -> c4(MINUS(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_minus(cons_+(x0, cons_+(z0, z1)))) -> c4(MINUS(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_+(x0, cons_minus(z0)))) -> c4(MINUS(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_+(x0, cons_*(z0, z1)))) -> c4(MINUS(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_+(0, x1))) -> c4(MINUS(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_minus(cons_+(cons_p(z0), x1))) -> c4(MINUS(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_minus(cons_+(cons_s(z0), x1))) -> c4(MINUS(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_minus(cons_+(cons_+(z0, z1), x1))) -> c4(MINUS(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_+(cons_minus(z0), x1))) -> c4(MINUS(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_minus(cons_+(cons_*(z0, z1), x1))) -> c4(MINUS(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_minus(cons_minus(cons_p(z0)))) -> c4(MINUS(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_minus(cons_minus(cons_s(z0)))) -> c4(MINUS(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_minus(cons_minus(cons_+(z0, z1)))) -> c4(MINUS(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_minus(cons_minus(cons_minus(z0)))) -> c4(MINUS(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_minus(cons_minus(cons_*(z0, z1)))) -> c4(MINUS(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_minus(cons_minus(0))) -> c11(MINUS(minus(0))) ENCARG(cons_minus(cons_minus(0))) -> c11(ENCARG(cons_minus(0))) ENCARG(cons_minus(cons_*(x0, 0))) -> c4(MINUS(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_minus(cons_*(x0, cons_p(z0)))) -> c4(MINUS(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_minus(cons_*(x0, cons_s(z0)))) -> c4(MINUS(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_minus(cons_*(x0, cons_+(z0, z1)))) -> c4(MINUS(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_*(x0, cons_minus(z0)))) -> c4(MINUS(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_*(x0, cons_*(z0, z1)))) -> c4(MINUS(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_*(0, x1))) -> c4(MINUS(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_minus(cons_*(cons_p(z0), x1))) -> c4(MINUS(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_minus(cons_*(cons_s(z0), x1))) -> c4(MINUS(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_minus(cons_*(cons_+(z0, z1), x1))) -> c4(MINUS(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_*(cons_minus(z0), x1))) -> c4(MINUS(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_minus(cons_*(cons_*(z0, z1), x1))) -> c4(MINUS(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_*(x0, cons_p(cons_p(z0)))) -> c5(*'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_*(x0, cons_p(cons_s(z0)))) -> c5(*'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_*(x0, cons_p(cons_+(z0, z1)))) -> c5(*'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_p(cons_minus(z0)))) -> c5(*'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_*(x0, cons_p(cons_*(z0, z1)))) -> c5(*'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_p(x1))) -> c5(*'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_s(z0), cons_p(x1))) -> c5(*'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_p(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_minus(z0), cons_p(x1))) -> c5(*'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_p(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_p(0))) -> c5(*'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_p(x1))) -> c5(ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_s(cons_p(z0)))) -> c5(*'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_*(x0, cons_s(cons_s(z0)))) -> c5(*'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_*(x0, cons_s(cons_+(z0, z1)))) -> c5(*'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_s(cons_minus(z0)))) -> c5(*'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_*(x0, cons_s(cons_*(z0, z1)))) -> c5(*'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_s(x1))) -> c5(*'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_s(z0), cons_s(x1))) -> c5(*'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_s(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_minus(z0), cons_s(x1))) -> c5(*'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_s(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(x0, cons_s(0))) -> c5(*'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_s(x1))) -> c5(ENCARG(cons_s(x1))) ENCARG(cons_*(x0, cons_+(x1, 0))) -> c5(*'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_*(x0, cons_+(x1, cons_p(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_s(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_+(z0, z1)))) -> c5(*'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_+(x1, cons_minus(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_*(z0, z1)))) -> c5(*'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_*(x0, cons_+(0, x2))) -> c5(*'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_*(x0, cons_+(cons_p(z0), x2))) -> c5(*'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_s(z0), x2))) -> c5(*'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_+(z0, z1), x2))) -> c5(*'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_*(x0, cons_+(cons_minus(z0), x2))) -> c5(*'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_*(z0, z1), x2))) -> c5(*'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_*(cons_p(z0), cons_+(x1, x2))) -> c5(*'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_s(z0), cons_+(x1, x2))) -> c5(*'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_+(z0, z1), cons_+(x1, x2))) -> c5(*'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_minus(z0), cons_+(x1, x2))) -> c5(*'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_*(z0, z1), cons_+(x1, x2))) -> c5(*'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(0, cons_+(x1, x2))) -> c5(ENCARG(cons_+(x1, x2))) ENCARG(cons_*(x0, cons_minus(0))) -> c5(*'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_*(x0, cons_minus(cons_p(z0)))) -> c5(*'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_*(x0, cons_minus(cons_s(z0)))) -> c5(*'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_*(x0, cons_minus(cons_+(z0, z1)))) -> c5(*'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_minus(cons_minus(z0)))) -> c5(*'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_*(x0, cons_minus(cons_*(z0, z1)))) -> c5(*'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_*(0, cons_minus(x1))) -> c5(*'(0, minus(encArg(x1))), ENCARG(0), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_p(z0), cons_minus(x1))) -> c5(*'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_s(z0), cons_minus(x1))) -> c5(*'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_minus(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_minus(z0), cons_minus(x1))) -> c5(*'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_minus(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1, c3_1, c11_1 ---------------------------------------- (245) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (246) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_+(cons_minus(0), x1)) -> c3(+'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_p(z0)), x1)) -> c3(+'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_s(z0)), x1)) -> c3(+'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_+(z0, z1)), x1)) -> c3(+'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_minus(z0)), x1)) -> c3(+'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_*(z0, z1)), x1)) -> c3(+'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(x0), 0)) -> c3(+'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) ENCARG(cons_+(cons_*(x0, 0), x2)) -> c3(+'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_p(z0)), x2)) -> c3(+'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_s(z0)), x2)) -> c3(+'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_+(z0, z1)), x2)) -> c3(+'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_minus(z0)), x2)) -> c3(+'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_*(z0, z1)), x2)) -> c3(+'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(0, x1), x2)) -> c3(+'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_p(z0), x1), x2)) -> c3(+'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_s(z0), x1), x2)) -> c3(+'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_+(z0, z1), x1), x2)) -> c3(+'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_minus(z0), x1), x2)) -> c3(+'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_*(z0, z1), x1), x2)) -> c3(+'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, x1), 0)) -> c3(+'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1))) ENCARG(cons_+(cons_p(z0), 0)) -> c3(+'(p(encArg(z0)), 0), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_s(z0), 0)) -> c3(+'(s(encArg(z0)), 0), ENCARG(cons_s(z0))) ENCARG(cons_+(0, 0)) -> c3(+'(0, 0)) ENCARG(cons_minus(cons_+(x0, 0))) -> c4(MINUS(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_minus(cons_+(x0, cons_p(z0)))) -> c4(MINUS(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_minus(cons_+(x0, cons_s(z0)))) -> c4(MINUS(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_minus(cons_+(x0, cons_+(z0, z1)))) -> c4(MINUS(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_+(x0, cons_minus(z0)))) -> c4(MINUS(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_+(x0, cons_*(z0, z1)))) -> c4(MINUS(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_+(0, x1))) -> c4(MINUS(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_minus(cons_+(cons_p(z0), x1))) -> c4(MINUS(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_minus(cons_+(cons_s(z0), x1))) -> c4(MINUS(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_minus(cons_+(cons_+(z0, z1), x1))) -> c4(MINUS(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_+(cons_minus(z0), x1))) -> c4(MINUS(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_minus(cons_+(cons_*(z0, z1), x1))) -> c4(MINUS(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_minus(cons_minus(cons_p(z0)))) -> c4(MINUS(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_minus(cons_minus(cons_s(z0)))) -> c4(MINUS(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_minus(cons_minus(cons_+(z0, z1)))) -> c4(MINUS(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_minus(cons_minus(cons_minus(z0)))) -> c4(MINUS(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_minus(cons_minus(cons_*(z0, z1)))) -> c4(MINUS(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_minus(cons_minus(0))) -> c11(MINUS(minus(0))) ENCARG(cons_minus(cons_minus(0))) -> c11(ENCARG(cons_minus(0))) ENCARG(cons_minus(cons_*(x0, 0))) -> c4(MINUS(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_minus(cons_*(x0, cons_p(z0)))) -> c4(MINUS(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_minus(cons_*(x0, cons_s(z0)))) -> c4(MINUS(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_minus(cons_*(x0, cons_+(z0, z1)))) -> c4(MINUS(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_*(x0, cons_minus(z0)))) -> c4(MINUS(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_*(x0, cons_*(z0, z1)))) -> c4(MINUS(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_*(0, x1))) -> c4(MINUS(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_minus(cons_*(cons_p(z0), x1))) -> c4(MINUS(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_minus(cons_*(cons_s(z0), x1))) -> c4(MINUS(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_minus(cons_*(cons_+(z0, z1), x1))) -> c4(MINUS(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_*(cons_minus(z0), x1))) -> c4(MINUS(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_minus(cons_*(cons_*(z0, z1), x1))) -> c4(MINUS(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_*(x0, cons_p(cons_p(z0)))) -> c5(*'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_*(x0, cons_p(cons_s(z0)))) -> c5(*'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_*(x0, cons_p(cons_+(z0, z1)))) -> c5(*'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_p(cons_minus(z0)))) -> c5(*'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_*(x0, cons_p(cons_*(z0, z1)))) -> c5(*'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_p(x1))) -> c5(*'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_s(z0), cons_p(x1))) -> c5(*'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_p(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_minus(z0), cons_p(x1))) -> c5(*'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_p(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_p(0))) -> c5(*'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_p(x1))) -> c5(ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_s(cons_p(z0)))) -> c5(*'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_*(x0, cons_s(cons_s(z0)))) -> c5(*'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_*(x0, cons_s(cons_+(z0, z1)))) -> c5(*'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_s(cons_minus(z0)))) -> c5(*'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_*(x0, cons_s(cons_*(z0, z1)))) -> c5(*'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_s(x1))) -> c5(*'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_s(z0), cons_s(x1))) -> c5(*'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_s(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_minus(z0), cons_s(x1))) -> c5(*'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_s(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(x0, cons_s(0))) -> c5(*'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_s(x1))) -> c5(ENCARG(cons_s(x1))) ENCARG(cons_*(x0, cons_+(x1, 0))) -> c5(*'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_*(x0, cons_+(x1, cons_p(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_s(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_+(z0, z1)))) -> c5(*'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_+(x1, cons_minus(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_*(z0, z1)))) -> c5(*'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_*(x0, cons_+(0, x2))) -> c5(*'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_*(x0, cons_+(cons_p(z0), x2))) -> c5(*'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_s(z0), x2))) -> c5(*'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_+(z0, z1), x2))) -> c5(*'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_*(x0, cons_+(cons_minus(z0), x2))) -> c5(*'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_*(z0, z1), x2))) -> c5(*'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_*(cons_p(z0), cons_+(x1, x2))) -> c5(*'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_s(z0), cons_+(x1, x2))) -> c5(*'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_+(z0, z1), cons_+(x1, x2))) -> c5(*'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_minus(z0), cons_+(x1, x2))) -> c5(*'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_*(z0, z1), cons_+(x1, x2))) -> c5(*'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(0, cons_+(x1, x2))) -> c5(ENCARG(cons_+(x1, x2))) ENCARG(cons_*(x0, cons_minus(0))) -> c5(*'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_*(x0, cons_minus(cons_p(z0)))) -> c5(*'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_*(x0, cons_minus(cons_s(z0)))) -> c5(*'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_*(x0, cons_minus(cons_+(z0, z1)))) -> c5(*'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_minus(cons_minus(z0)))) -> c5(*'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_*(x0, cons_minus(cons_*(z0, z1)))) -> c5(*'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_minus(x1))) -> c5(*'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_s(z0), cons_minus(x1))) -> c5(*'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_minus(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_minus(z0), cons_minus(x1))) -> c5(*'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_minus(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_*(0, cons_minus(x1))) -> c5(ENCARG(cons_minus(x1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1, c3_1, c11_1 ---------------------------------------- (247) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_*(x0, cons_*(z0, z1))) -> c5(*'(encArg(x0), *(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_*(z0, z1))) by ENCARG(cons_*(x0, cons_*(x1, 0))) -> c5(*'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_*(x0, cons_*(x1, cons_p(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_s(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_+(z0, z1)))) -> c5(*'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_*(x1, cons_minus(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_*(z0, z1)))) -> c5(*'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_*(x0, cons_*(0, x2))) -> c5(*'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_*(x0, cons_*(cons_p(z0), x2))) -> c5(*'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_s(z0), x2))) -> c5(*'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_+(z0, z1), x2))) -> c5(*'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_*(x0, cons_*(cons_minus(z0), x2))) -> c5(*'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_*(z0, z1), x2))) -> c5(*'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_*(0, cons_*(x1, x2))) -> c5(*'(0, *(encArg(x1), encArg(x2))), ENCARG(0), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_p(z0), cons_*(x1, x2))) -> c5(*'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_s(z0), cons_*(x1, x2))) -> c5(*'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_+(z0, z1), cons_*(x1, x2))) -> c5(*'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_minus(z0), cons_*(x1, x2))) -> c5(*'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_*(z0, z1), cons_*(x1, x2))) -> c5(*'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ---------------------------------------- (248) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_+(cons_minus(0), x1)) -> c3(+'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_p(z0)), x1)) -> c3(+'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_s(z0)), x1)) -> c3(+'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_+(z0, z1)), x1)) -> c3(+'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_minus(z0)), x1)) -> c3(+'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_*(z0, z1)), x1)) -> c3(+'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(x0), 0)) -> c3(+'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) ENCARG(cons_+(cons_*(x0, 0), x2)) -> c3(+'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_p(z0)), x2)) -> c3(+'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_s(z0)), x2)) -> c3(+'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_+(z0, z1)), x2)) -> c3(+'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_minus(z0)), x2)) -> c3(+'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_*(z0, z1)), x2)) -> c3(+'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(0, x1), x2)) -> c3(+'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_p(z0), x1), x2)) -> c3(+'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_s(z0), x1), x2)) -> c3(+'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_+(z0, z1), x1), x2)) -> c3(+'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_minus(z0), x1), x2)) -> c3(+'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_*(z0, z1), x1), x2)) -> c3(+'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, x1), 0)) -> c3(+'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1))) ENCARG(cons_+(cons_p(z0), 0)) -> c3(+'(p(encArg(z0)), 0), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_s(z0), 0)) -> c3(+'(s(encArg(z0)), 0), ENCARG(cons_s(z0))) ENCARG(cons_+(0, 0)) -> c3(+'(0, 0)) ENCARG(cons_minus(cons_+(x0, 0))) -> c4(MINUS(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_minus(cons_+(x0, cons_p(z0)))) -> c4(MINUS(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_minus(cons_+(x0, cons_s(z0)))) -> c4(MINUS(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_minus(cons_+(x0, cons_+(z0, z1)))) -> c4(MINUS(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_+(x0, cons_minus(z0)))) -> c4(MINUS(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_+(x0, cons_*(z0, z1)))) -> c4(MINUS(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_+(0, x1))) -> c4(MINUS(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_minus(cons_+(cons_p(z0), x1))) -> c4(MINUS(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_minus(cons_+(cons_s(z0), x1))) -> c4(MINUS(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_minus(cons_+(cons_+(z0, z1), x1))) -> c4(MINUS(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_+(cons_minus(z0), x1))) -> c4(MINUS(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_minus(cons_+(cons_*(z0, z1), x1))) -> c4(MINUS(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_minus(cons_minus(cons_p(z0)))) -> c4(MINUS(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_minus(cons_minus(cons_s(z0)))) -> c4(MINUS(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_minus(cons_minus(cons_+(z0, z1)))) -> c4(MINUS(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_minus(cons_minus(cons_minus(z0)))) -> c4(MINUS(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_minus(cons_minus(cons_*(z0, z1)))) -> c4(MINUS(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_minus(cons_minus(0))) -> c11(MINUS(minus(0))) ENCARG(cons_minus(cons_minus(0))) -> c11(ENCARG(cons_minus(0))) ENCARG(cons_minus(cons_*(x0, 0))) -> c4(MINUS(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_minus(cons_*(x0, cons_p(z0)))) -> c4(MINUS(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_minus(cons_*(x0, cons_s(z0)))) -> c4(MINUS(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_minus(cons_*(x0, cons_+(z0, z1)))) -> c4(MINUS(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_*(x0, cons_minus(z0)))) -> c4(MINUS(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_*(x0, cons_*(z0, z1)))) -> c4(MINUS(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_*(0, x1))) -> c4(MINUS(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_minus(cons_*(cons_p(z0), x1))) -> c4(MINUS(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_minus(cons_*(cons_s(z0), x1))) -> c4(MINUS(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_minus(cons_*(cons_+(z0, z1), x1))) -> c4(MINUS(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_*(cons_minus(z0), x1))) -> c4(MINUS(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_minus(cons_*(cons_*(z0, z1), x1))) -> c4(MINUS(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_*(x0, cons_p(cons_p(z0)))) -> c5(*'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_*(x0, cons_p(cons_s(z0)))) -> c5(*'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_*(x0, cons_p(cons_+(z0, z1)))) -> c5(*'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_p(cons_minus(z0)))) -> c5(*'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_*(x0, cons_p(cons_*(z0, z1)))) -> c5(*'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_p(x1))) -> c5(*'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_s(z0), cons_p(x1))) -> c5(*'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_p(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_minus(z0), cons_p(x1))) -> c5(*'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_p(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_p(0))) -> c5(*'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_p(x1))) -> c5(ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_s(cons_p(z0)))) -> c5(*'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_*(x0, cons_s(cons_s(z0)))) -> c5(*'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_*(x0, cons_s(cons_+(z0, z1)))) -> c5(*'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_s(cons_minus(z0)))) -> c5(*'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_*(x0, cons_s(cons_*(z0, z1)))) -> c5(*'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_s(x1))) -> c5(*'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_s(z0), cons_s(x1))) -> c5(*'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_s(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_minus(z0), cons_s(x1))) -> c5(*'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_s(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(x0, cons_s(0))) -> c5(*'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_s(x1))) -> c5(ENCARG(cons_s(x1))) ENCARG(cons_*(x0, cons_+(x1, 0))) -> c5(*'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_*(x0, cons_+(x1, cons_p(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_s(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_+(z0, z1)))) -> c5(*'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_+(x1, cons_minus(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_*(z0, z1)))) -> c5(*'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_*(x0, cons_+(0, x2))) -> c5(*'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_*(x0, cons_+(cons_p(z0), x2))) -> c5(*'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_s(z0), x2))) -> c5(*'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_+(z0, z1), x2))) -> c5(*'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_*(x0, cons_+(cons_minus(z0), x2))) -> c5(*'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_*(z0, z1), x2))) -> c5(*'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_*(cons_p(z0), cons_+(x1, x2))) -> c5(*'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_s(z0), cons_+(x1, x2))) -> c5(*'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_+(z0, z1), cons_+(x1, x2))) -> c5(*'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_minus(z0), cons_+(x1, x2))) -> c5(*'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_*(z0, z1), cons_+(x1, x2))) -> c5(*'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(0, cons_+(x1, x2))) -> c5(ENCARG(cons_+(x1, x2))) ENCARG(cons_*(x0, cons_minus(0))) -> c5(*'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_*(x0, cons_minus(cons_p(z0)))) -> c5(*'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_*(x0, cons_minus(cons_s(z0)))) -> c5(*'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_*(x0, cons_minus(cons_+(z0, z1)))) -> c5(*'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_minus(cons_minus(z0)))) -> c5(*'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_*(x0, cons_minus(cons_*(z0, z1)))) -> c5(*'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_minus(x1))) -> c5(*'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_s(z0), cons_minus(x1))) -> c5(*'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_minus(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_minus(z0), cons_minus(x1))) -> c5(*'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_minus(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_*(0, cons_minus(x1))) -> c5(ENCARG(cons_minus(x1))) ENCARG(cons_*(x0, cons_*(x1, 0))) -> c5(*'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_*(x0, cons_*(x1, cons_p(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_s(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_+(z0, z1)))) -> c5(*'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_*(x1, cons_minus(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_*(z0, z1)))) -> c5(*'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_*(x0, cons_*(0, x2))) -> c5(*'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_*(x0, cons_*(cons_p(z0), x2))) -> c5(*'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_s(z0), x2))) -> c5(*'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_+(z0, z1), x2))) -> c5(*'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_*(x0, cons_*(cons_minus(z0), x2))) -> c5(*'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_*(z0, z1), x2))) -> c5(*'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_*(0, cons_*(x1, x2))) -> c5(*'(0, *(encArg(x1), encArg(x2))), ENCARG(0), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_p(z0), cons_*(x1, x2))) -> c5(*'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_s(z0), cons_*(x1, x2))) -> c5(*'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_+(z0, z1), cons_*(x1, x2))) -> c5(*'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_minus(z0), cons_*(x1, x2))) -> c5(*'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_*(z0, z1), cons_*(x1, x2))) -> c5(*'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1, c3_1, c11_1 ---------------------------------------- (249) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 2 trailing tuple parts ---------------------------------------- (250) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_+(cons_minus(0), x1)) -> c3(+'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_p(z0)), x1)) -> c3(+'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_s(z0)), x1)) -> c3(+'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_+(z0, z1)), x1)) -> c3(+'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_minus(z0)), x1)) -> c3(+'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_*(z0, z1)), x1)) -> c3(+'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(x0), 0)) -> c3(+'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) ENCARG(cons_+(cons_*(x0, 0), x2)) -> c3(+'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_p(z0)), x2)) -> c3(+'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_s(z0)), x2)) -> c3(+'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_+(z0, z1)), x2)) -> c3(+'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_minus(z0)), x2)) -> c3(+'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_*(z0, z1)), x2)) -> c3(+'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(0, x1), x2)) -> c3(+'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_p(z0), x1), x2)) -> c3(+'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_s(z0), x1), x2)) -> c3(+'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_+(z0, z1), x1), x2)) -> c3(+'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_minus(z0), x1), x2)) -> c3(+'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_*(z0, z1), x1), x2)) -> c3(+'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, x1), 0)) -> c3(+'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1))) ENCARG(cons_+(cons_p(z0), 0)) -> c3(+'(p(encArg(z0)), 0), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_s(z0), 0)) -> c3(+'(s(encArg(z0)), 0), ENCARG(cons_s(z0))) ENCARG(cons_+(0, 0)) -> c3(+'(0, 0)) ENCARG(cons_minus(cons_+(x0, 0))) -> c4(MINUS(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_minus(cons_+(x0, cons_p(z0)))) -> c4(MINUS(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_minus(cons_+(x0, cons_s(z0)))) -> c4(MINUS(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_minus(cons_+(x0, cons_+(z0, z1)))) -> c4(MINUS(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_+(x0, cons_minus(z0)))) -> c4(MINUS(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_+(x0, cons_*(z0, z1)))) -> c4(MINUS(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_+(0, x1))) -> c4(MINUS(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_minus(cons_+(cons_p(z0), x1))) -> c4(MINUS(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_minus(cons_+(cons_s(z0), x1))) -> c4(MINUS(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_minus(cons_+(cons_+(z0, z1), x1))) -> c4(MINUS(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_+(cons_minus(z0), x1))) -> c4(MINUS(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_minus(cons_+(cons_*(z0, z1), x1))) -> c4(MINUS(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_minus(cons_minus(cons_p(z0)))) -> c4(MINUS(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_minus(cons_minus(cons_s(z0)))) -> c4(MINUS(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_minus(cons_minus(cons_+(z0, z1)))) -> c4(MINUS(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_minus(cons_minus(cons_minus(z0)))) -> c4(MINUS(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_minus(cons_minus(cons_*(z0, z1)))) -> c4(MINUS(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_minus(cons_minus(0))) -> c11(MINUS(minus(0))) ENCARG(cons_minus(cons_minus(0))) -> c11(ENCARG(cons_minus(0))) ENCARG(cons_minus(cons_*(x0, 0))) -> c4(MINUS(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_minus(cons_*(x0, cons_p(z0)))) -> c4(MINUS(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_minus(cons_*(x0, cons_s(z0)))) -> c4(MINUS(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_minus(cons_*(x0, cons_+(z0, z1)))) -> c4(MINUS(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_*(x0, cons_minus(z0)))) -> c4(MINUS(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_*(x0, cons_*(z0, z1)))) -> c4(MINUS(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_*(0, x1))) -> c4(MINUS(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_minus(cons_*(cons_p(z0), x1))) -> c4(MINUS(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_minus(cons_*(cons_s(z0), x1))) -> c4(MINUS(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_minus(cons_*(cons_+(z0, z1), x1))) -> c4(MINUS(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_*(cons_minus(z0), x1))) -> c4(MINUS(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_minus(cons_*(cons_*(z0, z1), x1))) -> c4(MINUS(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_*(x0, cons_p(cons_p(z0)))) -> c5(*'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_*(x0, cons_p(cons_s(z0)))) -> c5(*'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_*(x0, cons_p(cons_+(z0, z1)))) -> c5(*'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_p(cons_minus(z0)))) -> c5(*'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_*(x0, cons_p(cons_*(z0, z1)))) -> c5(*'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_p(x1))) -> c5(*'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_s(z0), cons_p(x1))) -> c5(*'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_p(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_minus(z0), cons_p(x1))) -> c5(*'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_p(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_p(0))) -> c5(*'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_p(x1))) -> c5(ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_s(cons_p(z0)))) -> c5(*'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_*(x0, cons_s(cons_s(z0)))) -> c5(*'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_*(x0, cons_s(cons_+(z0, z1)))) -> c5(*'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_s(cons_minus(z0)))) -> c5(*'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_*(x0, cons_s(cons_*(z0, z1)))) -> c5(*'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_s(x1))) -> c5(*'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_s(z0), cons_s(x1))) -> c5(*'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_s(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_minus(z0), cons_s(x1))) -> c5(*'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_s(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(x0, cons_s(0))) -> c5(*'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_s(x1))) -> c5(ENCARG(cons_s(x1))) ENCARG(cons_*(x0, cons_+(x1, 0))) -> c5(*'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_*(x0, cons_+(x1, cons_p(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_s(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_+(z0, z1)))) -> c5(*'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_+(x1, cons_minus(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_*(z0, z1)))) -> c5(*'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_*(x0, cons_+(0, x2))) -> c5(*'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_*(x0, cons_+(cons_p(z0), x2))) -> c5(*'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_s(z0), x2))) -> c5(*'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_+(z0, z1), x2))) -> c5(*'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_*(x0, cons_+(cons_minus(z0), x2))) -> c5(*'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_*(z0, z1), x2))) -> c5(*'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_*(cons_p(z0), cons_+(x1, x2))) -> c5(*'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_s(z0), cons_+(x1, x2))) -> c5(*'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_+(z0, z1), cons_+(x1, x2))) -> c5(*'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_minus(z0), cons_+(x1, x2))) -> c5(*'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_*(z0, z1), cons_+(x1, x2))) -> c5(*'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(0, cons_+(x1, x2))) -> c5(ENCARG(cons_+(x1, x2))) ENCARG(cons_*(x0, cons_minus(0))) -> c5(*'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_*(x0, cons_minus(cons_p(z0)))) -> c5(*'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_*(x0, cons_minus(cons_s(z0)))) -> c5(*'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_*(x0, cons_minus(cons_+(z0, z1)))) -> c5(*'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_minus(cons_minus(z0)))) -> c5(*'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_*(x0, cons_minus(cons_*(z0, z1)))) -> c5(*'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_minus(x1))) -> c5(*'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_s(z0), cons_minus(x1))) -> c5(*'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_minus(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_minus(z0), cons_minus(x1))) -> c5(*'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_minus(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_*(0, cons_minus(x1))) -> c5(ENCARG(cons_minus(x1))) ENCARG(cons_*(x0, cons_*(x1, 0))) -> c5(*'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_*(x0, cons_*(x1, cons_p(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_s(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_+(z0, z1)))) -> c5(*'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_*(x1, cons_minus(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_*(z0, z1)))) -> c5(*'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_*(x0, cons_*(0, x2))) -> c5(*'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_*(x0, cons_*(cons_p(z0), x2))) -> c5(*'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_s(z0), x2))) -> c5(*'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_+(z0, z1), x2))) -> c5(*'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_*(x0, cons_*(cons_minus(z0), x2))) -> c5(*'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_*(z0, z1), x2))) -> c5(*'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_*(cons_p(z0), cons_*(x1, x2))) -> c5(*'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_s(z0), cons_*(x1, x2))) -> c5(*'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_+(z0, z1), cons_*(x1, x2))) -> c5(*'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_minus(z0), cons_*(x1, x2))) -> c5(*'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_*(z0, z1), cons_*(x1, x2))) -> c5(*'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(0, cons_*(x1, x2))) -> c5(ENCARG(cons_*(x1, x2))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1, c3_1, c11_1 ---------------------------------------- (251) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_*(cons_+(z0, z1), x1)) -> c5(*'(+(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_+(z0, z1)), ENCARG(x1)) by ENCARG(cons_*(cons_+(x0, x1), 0)) -> c5(*'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1)), ENCARG(0)) ENCARG(cons_*(cons_+(x0, x1), cons_p(z0))) -> c5(*'(+(encArg(x0), encArg(x1)), p(encArg(z0))), ENCARG(cons_+(x0, x1)), ENCARG(cons_p(z0))) ENCARG(cons_*(cons_+(x0, x1), cons_s(z0))) -> c5(*'(+(encArg(x0), encArg(x1)), s(encArg(z0))), ENCARG(cons_+(x0, x1)), ENCARG(cons_s(z0))) ENCARG(cons_*(cons_+(x0, x1), cons_+(z0, z1))) -> c5(*'(+(encArg(x0), encArg(x1)), +(encArg(z0), encArg(z1))), ENCARG(cons_+(x0, x1)), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(cons_+(x0, x1), cons_minus(z0))) -> c5(*'(+(encArg(x0), encArg(x1)), minus(encArg(z0))), ENCARG(cons_+(x0, x1)), ENCARG(cons_minus(z0))) ENCARG(cons_*(cons_+(x0, x1), cons_*(z0, z1))) -> c5(*'(+(encArg(x0), encArg(x1)), *(encArg(z0), encArg(z1))), ENCARG(cons_+(x0, x1)), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_+(x0, 0), x2)) -> c5(*'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_p(z0)), x2)) -> c5(*'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_s(z0)), x2)) -> c5(*'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_+(z0, z1)), x2)) -> c5(*'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_minus(z0)), x2)) -> c5(*'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_*(z0, z1)), x2)) -> c5(*'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_*(cons_+(0, x1), x2)) -> c5(*'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_p(z0), x1), x2)) -> c5(*'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_s(z0), x1), x2)) -> c5(*'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_+(z0, z1), x1), x2)) -> c5(*'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_minus(z0), x1), x2)) -> c5(*'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_*(z0, z1), x1), x2)) -> c5(*'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ---------------------------------------- (252) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_+(cons_minus(0), x1)) -> c3(+'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_p(z0)), x1)) -> c3(+'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_s(z0)), x1)) -> c3(+'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_+(z0, z1)), x1)) -> c3(+'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_minus(z0)), x1)) -> c3(+'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_*(z0, z1)), x1)) -> c3(+'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(x0), 0)) -> c3(+'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) ENCARG(cons_+(cons_*(x0, 0), x2)) -> c3(+'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_p(z0)), x2)) -> c3(+'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_s(z0)), x2)) -> c3(+'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_+(z0, z1)), x2)) -> c3(+'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_minus(z0)), x2)) -> c3(+'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_*(z0, z1)), x2)) -> c3(+'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(0, x1), x2)) -> c3(+'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_p(z0), x1), x2)) -> c3(+'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_s(z0), x1), x2)) -> c3(+'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_+(z0, z1), x1), x2)) -> c3(+'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_minus(z0), x1), x2)) -> c3(+'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_*(z0, z1), x1), x2)) -> c3(+'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, x1), 0)) -> c3(+'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1))) ENCARG(cons_+(cons_p(z0), 0)) -> c3(+'(p(encArg(z0)), 0), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_s(z0), 0)) -> c3(+'(s(encArg(z0)), 0), ENCARG(cons_s(z0))) ENCARG(cons_+(0, 0)) -> c3(+'(0, 0)) ENCARG(cons_minus(cons_+(x0, 0))) -> c4(MINUS(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_minus(cons_+(x0, cons_p(z0)))) -> c4(MINUS(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_minus(cons_+(x0, cons_s(z0)))) -> c4(MINUS(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_minus(cons_+(x0, cons_+(z0, z1)))) -> c4(MINUS(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_+(x0, cons_minus(z0)))) -> c4(MINUS(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_+(x0, cons_*(z0, z1)))) -> c4(MINUS(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_+(0, x1))) -> c4(MINUS(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_minus(cons_+(cons_p(z0), x1))) -> c4(MINUS(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_minus(cons_+(cons_s(z0), x1))) -> c4(MINUS(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_minus(cons_+(cons_+(z0, z1), x1))) -> c4(MINUS(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_+(cons_minus(z0), x1))) -> c4(MINUS(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_minus(cons_+(cons_*(z0, z1), x1))) -> c4(MINUS(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_minus(cons_minus(cons_p(z0)))) -> c4(MINUS(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_minus(cons_minus(cons_s(z0)))) -> c4(MINUS(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_minus(cons_minus(cons_+(z0, z1)))) -> c4(MINUS(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_minus(cons_minus(cons_minus(z0)))) -> c4(MINUS(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_minus(cons_minus(cons_*(z0, z1)))) -> c4(MINUS(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_minus(cons_minus(0))) -> c11(MINUS(minus(0))) ENCARG(cons_minus(cons_minus(0))) -> c11(ENCARG(cons_minus(0))) ENCARG(cons_minus(cons_*(x0, 0))) -> c4(MINUS(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_minus(cons_*(x0, cons_p(z0)))) -> c4(MINUS(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_minus(cons_*(x0, cons_s(z0)))) -> c4(MINUS(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_minus(cons_*(x0, cons_+(z0, z1)))) -> c4(MINUS(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_*(x0, cons_minus(z0)))) -> c4(MINUS(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_*(x0, cons_*(z0, z1)))) -> c4(MINUS(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_*(0, x1))) -> c4(MINUS(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_minus(cons_*(cons_p(z0), x1))) -> c4(MINUS(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_minus(cons_*(cons_s(z0), x1))) -> c4(MINUS(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_minus(cons_*(cons_+(z0, z1), x1))) -> c4(MINUS(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_*(cons_minus(z0), x1))) -> c4(MINUS(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_minus(cons_*(cons_*(z0, z1), x1))) -> c4(MINUS(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_*(x0, cons_p(cons_p(z0)))) -> c5(*'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_*(x0, cons_p(cons_s(z0)))) -> c5(*'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_*(x0, cons_p(cons_+(z0, z1)))) -> c5(*'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_p(cons_minus(z0)))) -> c5(*'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_*(x0, cons_p(cons_*(z0, z1)))) -> c5(*'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_p(x1))) -> c5(*'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_s(z0), cons_p(x1))) -> c5(*'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_p(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_minus(z0), cons_p(x1))) -> c5(*'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_p(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_p(0))) -> c5(*'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_p(x1))) -> c5(ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_s(cons_p(z0)))) -> c5(*'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_*(x0, cons_s(cons_s(z0)))) -> c5(*'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_*(x0, cons_s(cons_+(z0, z1)))) -> c5(*'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_s(cons_minus(z0)))) -> c5(*'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_*(x0, cons_s(cons_*(z0, z1)))) -> c5(*'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_s(x1))) -> c5(*'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_s(z0), cons_s(x1))) -> c5(*'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_s(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_minus(z0), cons_s(x1))) -> c5(*'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_s(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(x0, cons_s(0))) -> c5(*'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_s(x1))) -> c5(ENCARG(cons_s(x1))) ENCARG(cons_*(x0, cons_+(x1, 0))) -> c5(*'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_*(x0, cons_+(x1, cons_p(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_s(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_+(z0, z1)))) -> c5(*'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_+(x1, cons_minus(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_*(z0, z1)))) -> c5(*'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_*(x0, cons_+(0, x2))) -> c5(*'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_*(x0, cons_+(cons_p(z0), x2))) -> c5(*'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_s(z0), x2))) -> c5(*'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_+(z0, z1), x2))) -> c5(*'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_*(x0, cons_+(cons_minus(z0), x2))) -> c5(*'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_*(z0, z1), x2))) -> c5(*'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_*(cons_p(z0), cons_+(x1, x2))) -> c5(*'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_s(z0), cons_+(x1, x2))) -> c5(*'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_+(z0, z1), cons_+(x1, x2))) -> c5(*'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_minus(z0), cons_+(x1, x2))) -> c5(*'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_*(z0, z1), cons_+(x1, x2))) -> c5(*'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(0, cons_+(x1, x2))) -> c5(ENCARG(cons_+(x1, x2))) ENCARG(cons_*(x0, cons_minus(0))) -> c5(*'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_*(x0, cons_minus(cons_p(z0)))) -> c5(*'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_*(x0, cons_minus(cons_s(z0)))) -> c5(*'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_*(x0, cons_minus(cons_+(z0, z1)))) -> c5(*'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_minus(cons_minus(z0)))) -> c5(*'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_*(x0, cons_minus(cons_*(z0, z1)))) -> c5(*'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_minus(x1))) -> c5(*'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_s(z0), cons_minus(x1))) -> c5(*'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_minus(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_minus(z0), cons_minus(x1))) -> c5(*'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_minus(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_*(0, cons_minus(x1))) -> c5(ENCARG(cons_minus(x1))) ENCARG(cons_*(x0, cons_*(x1, 0))) -> c5(*'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_*(x0, cons_*(x1, cons_p(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_s(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_+(z0, z1)))) -> c5(*'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_*(x1, cons_minus(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_*(z0, z1)))) -> c5(*'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_*(x0, cons_*(0, x2))) -> c5(*'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_*(x0, cons_*(cons_p(z0), x2))) -> c5(*'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_s(z0), x2))) -> c5(*'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_+(z0, z1), x2))) -> c5(*'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_*(x0, cons_*(cons_minus(z0), x2))) -> c5(*'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_*(z0, z1), x2))) -> c5(*'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_*(cons_p(z0), cons_*(x1, x2))) -> c5(*'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_s(z0), cons_*(x1, x2))) -> c5(*'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_+(z0, z1), cons_*(x1, x2))) -> c5(*'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_minus(z0), cons_*(x1, x2))) -> c5(*'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_*(z0, z1), cons_*(x1, x2))) -> c5(*'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(0, cons_*(x1, x2))) -> c5(ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_+(x0, x1), 0)) -> c5(*'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1)), ENCARG(0)) ENCARG(cons_*(cons_+(x0, 0), x2)) -> c5(*'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_p(z0)), x2)) -> c5(*'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_s(z0)), x2)) -> c5(*'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_+(z0, z1)), x2)) -> c5(*'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_minus(z0)), x2)) -> c5(*'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_*(z0, z1)), x2)) -> c5(*'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_*(cons_+(0, x1), x2)) -> c5(*'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_p(z0), x1), x2)) -> c5(*'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_s(z0), x1), x2)) -> c5(*'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_+(z0, z1), x1), x2)) -> c5(*'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_minus(z0), x1), x2)) -> c5(*'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_*(z0, z1), x1), x2)) -> c5(*'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1, c3_1, c11_1 ---------------------------------------- (253) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (254) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_+(cons_minus(0), x1)) -> c3(+'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_p(z0)), x1)) -> c3(+'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_s(z0)), x1)) -> c3(+'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_+(z0, z1)), x1)) -> c3(+'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_minus(z0)), x1)) -> c3(+'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_*(z0, z1)), x1)) -> c3(+'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(x0), 0)) -> c3(+'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) ENCARG(cons_+(cons_*(x0, 0), x2)) -> c3(+'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_p(z0)), x2)) -> c3(+'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_s(z0)), x2)) -> c3(+'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_+(z0, z1)), x2)) -> c3(+'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_minus(z0)), x2)) -> c3(+'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_*(z0, z1)), x2)) -> c3(+'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(0, x1), x2)) -> c3(+'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_p(z0), x1), x2)) -> c3(+'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_s(z0), x1), x2)) -> c3(+'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_+(z0, z1), x1), x2)) -> c3(+'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_minus(z0), x1), x2)) -> c3(+'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_*(z0, z1), x1), x2)) -> c3(+'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, x1), 0)) -> c3(+'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1))) ENCARG(cons_+(cons_p(z0), 0)) -> c3(+'(p(encArg(z0)), 0), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_s(z0), 0)) -> c3(+'(s(encArg(z0)), 0), ENCARG(cons_s(z0))) ENCARG(cons_+(0, 0)) -> c3(+'(0, 0)) ENCARG(cons_minus(cons_+(x0, 0))) -> c4(MINUS(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_minus(cons_+(x0, cons_p(z0)))) -> c4(MINUS(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_minus(cons_+(x0, cons_s(z0)))) -> c4(MINUS(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_minus(cons_+(x0, cons_+(z0, z1)))) -> c4(MINUS(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_+(x0, cons_minus(z0)))) -> c4(MINUS(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_+(x0, cons_*(z0, z1)))) -> c4(MINUS(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_+(0, x1))) -> c4(MINUS(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_minus(cons_+(cons_p(z0), x1))) -> c4(MINUS(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_minus(cons_+(cons_s(z0), x1))) -> c4(MINUS(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_minus(cons_+(cons_+(z0, z1), x1))) -> c4(MINUS(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_+(cons_minus(z0), x1))) -> c4(MINUS(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_minus(cons_+(cons_*(z0, z1), x1))) -> c4(MINUS(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_minus(cons_minus(cons_p(z0)))) -> c4(MINUS(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_minus(cons_minus(cons_s(z0)))) -> c4(MINUS(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_minus(cons_minus(cons_+(z0, z1)))) -> c4(MINUS(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_minus(cons_minus(cons_minus(z0)))) -> c4(MINUS(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_minus(cons_minus(cons_*(z0, z1)))) -> c4(MINUS(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_minus(cons_minus(0))) -> c11(MINUS(minus(0))) ENCARG(cons_minus(cons_minus(0))) -> c11(ENCARG(cons_minus(0))) ENCARG(cons_minus(cons_*(x0, 0))) -> c4(MINUS(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_minus(cons_*(x0, cons_p(z0)))) -> c4(MINUS(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_minus(cons_*(x0, cons_s(z0)))) -> c4(MINUS(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_minus(cons_*(x0, cons_+(z0, z1)))) -> c4(MINUS(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_*(x0, cons_minus(z0)))) -> c4(MINUS(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_*(x0, cons_*(z0, z1)))) -> c4(MINUS(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_*(0, x1))) -> c4(MINUS(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_minus(cons_*(cons_p(z0), x1))) -> c4(MINUS(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_minus(cons_*(cons_s(z0), x1))) -> c4(MINUS(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_minus(cons_*(cons_+(z0, z1), x1))) -> c4(MINUS(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_*(cons_minus(z0), x1))) -> c4(MINUS(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_minus(cons_*(cons_*(z0, z1), x1))) -> c4(MINUS(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_*(x0, cons_p(cons_p(z0)))) -> c5(*'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_*(x0, cons_p(cons_s(z0)))) -> c5(*'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_*(x0, cons_p(cons_+(z0, z1)))) -> c5(*'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_p(cons_minus(z0)))) -> c5(*'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_*(x0, cons_p(cons_*(z0, z1)))) -> c5(*'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_p(x1))) -> c5(*'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_s(z0), cons_p(x1))) -> c5(*'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_p(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_minus(z0), cons_p(x1))) -> c5(*'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_p(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_p(0))) -> c5(*'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_p(x1))) -> c5(ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_s(cons_p(z0)))) -> c5(*'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_*(x0, cons_s(cons_s(z0)))) -> c5(*'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_*(x0, cons_s(cons_+(z0, z1)))) -> c5(*'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_s(cons_minus(z0)))) -> c5(*'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_*(x0, cons_s(cons_*(z0, z1)))) -> c5(*'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_s(x1))) -> c5(*'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_s(z0), cons_s(x1))) -> c5(*'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_s(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_minus(z0), cons_s(x1))) -> c5(*'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_s(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(x0, cons_s(0))) -> c5(*'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_s(x1))) -> c5(ENCARG(cons_s(x1))) ENCARG(cons_*(x0, cons_+(x1, 0))) -> c5(*'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_*(x0, cons_+(x1, cons_p(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_s(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_+(z0, z1)))) -> c5(*'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_+(x1, cons_minus(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_*(z0, z1)))) -> c5(*'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_*(x0, cons_+(0, x2))) -> c5(*'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_*(x0, cons_+(cons_p(z0), x2))) -> c5(*'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_s(z0), x2))) -> c5(*'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_+(z0, z1), x2))) -> c5(*'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_*(x0, cons_+(cons_minus(z0), x2))) -> c5(*'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_*(z0, z1), x2))) -> c5(*'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_*(cons_p(z0), cons_+(x1, x2))) -> c5(*'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_s(z0), cons_+(x1, x2))) -> c5(*'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_+(z0, z1), cons_+(x1, x2))) -> c5(*'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_minus(z0), cons_+(x1, x2))) -> c5(*'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_*(z0, z1), cons_+(x1, x2))) -> c5(*'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(0, cons_+(x1, x2))) -> c5(ENCARG(cons_+(x1, x2))) ENCARG(cons_*(x0, cons_minus(0))) -> c5(*'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_*(x0, cons_minus(cons_p(z0)))) -> c5(*'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_*(x0, cons_minus(cons_s(z0)))) -> c5(*'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_*(x0, cons_minus(cons_+(z0, z1)))) -> c5(*'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_minus(cons_minus(z0)))) -> c5(*'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_*(x0, cons_minus(cons_*(z0, z1)))) -> c5(*'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_minus(x1))) -> c5(*'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_s(z0), cons_minus(x1))) -> c5(*'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_minus(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_minus(z0), cons_minus(x1))) -> c5(*'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_minus(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_*(0, cons_minus(x1))) -> c5(ENCARG(cons_minus(x1))) ENCARG(cons_*(x0, cons_*(x1, 0))) -> c5(*'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_*(x0, cons_*(x1, cons_p(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_s(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_+(z0, z1)))) -> c5(*'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_*(x1, cons_minus(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_*(z0, z1)))) -> c5(*'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_*(x0, cons_*(0, x2))) -> c5(*'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_*(x0, cons_*(cons_p(z0), x2))) -> c5(*'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_s(z0), x2))) -> c5(*'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_+(z0, z1), x2))) -> c5(*'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_*(x0, cons_*(cons_minus(z0), x2))) -> c5(*'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_*(z0, z1), x2))) -> c5(*'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_*(cons_p(z0), cons_*(x1, x2))) -> c5(*'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_s(z0), cons_*(x1, x2))) -> c5(*'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_+(z0, z1), cons_*(x1, x2))) -> c5(*'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_minus(z0), cons_*(x1, x2))) -> c5(*'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_*(z0, z1), cons_*(x1, x2))) -> c5(*'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(0, cons_*(x1, x2))) -> c5(ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_+(x0, 0), x2)) -> c5(*'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_p(z0)), x2)) -> c5(*'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_s(z0)), x2)) -> c5(*'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_+(z0, z1)), x2)) -> c5(*'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_minus(z0)), x2)) -> c5(*'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_*(z0, z1)), x2)) -> c5(*'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_*(cons_+(0, x1), x2)) -> c5(*'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_p(z0), x1), x2)) -> c5(*'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_s(z0), x1), x2)) -> c5(*'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_+(z0, z1), x1), x2)) -> c5(*'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_minus(z0), x1), x2)) -> c5(*'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_*(z0, z1), x1), x2)) -> c5(*'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, x1), 0)) -> c5(*'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1, c3_1, c11_1 ---------------------------------------- (255) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_*(cons_minus(z0), x1)) -> c5(*'(minus(encArg(z0)), encArg(x1)), ENCARG(cons_minus(z0)), ENCARG(x1)) by ENCARG(cons_*(cons_minus(x0), 0)) -> c5(*'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0)), ENCARG(0)) ENCARG(cons_*(cons_minus(x0), cons_p(z0))) -> c5(*'(minus(encArg(x0)), p(encArg(z0))), ENCARG(cons_minus(x0)), ENCARG(cons_p(z0))) ENCARG(cons_*(cons_minus(x0), cons_s(z0))) -> c5(*'(minus(encArg(x0)), s(encArg(z0))), ENCARG(cons_minus(x0)), ENCARG(cons_s(z0))) ENCARG(cons_*(cons_minus(x0), cons_+(z0, z1))) -> c5(*'(minus(encArg(x0)), +(encArg(z0), encArg(z1))), ENCARG(cons_minus(x0)), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(cons_minus(x0), cons_minus(z0))) -> c5(*'(minus(encArg(x0)), minus(encArg(z0))), ENCARG(cons_minus(x0)), ENCARG(cons_minus(z0))) ENCARG(cons_*(cons_minus(x0), cons_*(z0, z1))) -> c5(*'(minus(encArg(x0)), *(encArg(z0), encArg(z1))), ENCARG(cons_minus(x0)), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_minus(0), x1)) -> c5(*'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_p(z0)), x1)) -> c5(*'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_s(z0)), x1)) -> c5(*'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_+(z0, z1)), x1)) -> c5(*'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_minus(z0)), x1)) -> c5(*'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_*(z0, z1)), x1)) -> c5(*'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ---------------------------------------- (256) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_+(cons_minus(0), x1)) -> c3(+'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_p(z0)), x1)) -> c3(+'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_s(z0)), x1)) -> c3(+'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_+(z0, z1)), x1)) -> c3(+'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_minus(z0)), x1)) -> c3(+'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_*(z0, z1)), x1)) -> c3(+'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(x0), 0)) -> c3(+'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) ENCARG(cons_+(cons_*(x0, 0), x2)) -> c3(+'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_p(z0)), x2)) -> c3(+'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_s(z0)), x2)) -> c3(+'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_+(z0, z1)), x2)) -> c3(+'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_minus(z0)), x2)) -> c3(+'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_*(z0, z1)), x2)) -> c3(+'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(0, x1), x2)) -> c3(+'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_p(z0), x1), x2)) -> c3(+'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_s(z0), x1), x2)) -> c3(+'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_+(z0, z1), x1), x2)) -> c3(+'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_minus(z0), x1), x2)) -> c3(+'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_*(z0, z1), x1), x2)) -> c3(+'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, x1), 0)) -> c3(+'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1))) ENCARG(cons_+(cons_p(z0), 0)) -> c3(+'(p(encArg(z0)), 0), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_s(z0), 0)) -> c3(+'(s(encArg(z0)), 0), ENCARG(cons_s(z0))) ENCARG(cons_+(0, 0)) -> c3(+'(0, 0)) ENCARG(cons_minus(cons_+(x0, 0))) -> c4(MINUS(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_minus(cons_+(x0, cons_p(z0)))) -> c4(MINUS(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_minus(cons_+(x0, cons_s(z0)))) -> c4(MINUS(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_minus(cons_+(x0, cons_+(z0, z1)))) -> c4(MINUS(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_+(x0, cons_minus(z0)))) -> c4(MINUS(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_+(x0, cons_*(z0, z1)))) -> c4(MINUS(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_+(0, x1))) -> c4(MINUS(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_minus(cons_+(cons_p(z0), x1))) -> c4(MINUS(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_minus(cons_+(cons_s(z0), x1))) -> c4(MINUS(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_minus(cons_+(cons_+(z0, z1), x1))) -> c4(MINUS(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_+(cons_minus(z0), x1))) -> c4(MINUS(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_minus(cons_+(cons_*(z0, z1), x1))) -> c4(MINUS(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_minus(cons_minus(cons_p(z0)))) -> c4(MINUS(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_minus(cons_minus(cons_s(z0)))) -> c4(MINUS(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_minus(cons_minus(cons_+(z0, z1)))) -> c4(MINUS(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_minus(cons_minus(cons_minus(z0)))) -> c4(MINUS(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_minus(cons_minus(cons_*(z0, z1)))) -> c4(MINUS(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_minus(cons_minus(0))) -> c11(MINUS(minus(0))) ENCARG(cons_minus(cons_minus(0))) -> c11(ENCARG(cons_minus(0))) ENCARG(cons_minus(cons_*(x0, 0))) -> c4(MINUS(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_minus(cons_*(x0, cons_p(z0)))) -> c4(MINUS(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_minus(cons_*(x0, cons_s(z0)))) -> c4(MINUS(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_minus(cons_*(x0, cons_+(z0, z1)))) -> c4(MINUS(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_*(x0, cons_minus(z0)))) -> c4(MINUS(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_*(x0, cons_*(z0, z1)))) -> c4(MINUS(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_*(0, x1))) -> c4(MINUS(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_minus(cons_*(cons_p(z0), x1))) -> c4(MINUS(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_minus(cons_*(cons_s(z0), x1))) -> c4(MINUS(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_minus(cons_*(cons_+(z0, z1), x1))) -> c4(MINUS(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_*(cons_minus(z0), x1))) -> c4(MINUS(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_minus(cons_*(cons_*(z0, z1), x1))) -> c4(MINUS(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_*(x0, cons_p(cons_p(z0)))) -> c5(*'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_*(x0, cons_p(cons_s(z0)))) -> c5(*'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_*(x0, cons_p(cons_+(z0, z1)))) -> c5(*'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_p(cons_minus(z0)))) -> c5(*'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_*(x0, cons_p(cons_*(z0, z1)))) -> c5(*'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_p(x1))) -> c5(*'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_s(z0), cons_p(x1))) -> c5(*'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_p(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_minus(z0), cons_p(x1))) -> c5(*'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_p(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_p(0))) -> c5(*'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_p(x1))) -> c5(ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_s(cons_p(z0)))) -> c5(*'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_*(x0, cons_s(cons_s(z0)))) -> c5(*'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_*(x0, cons_s(cons_+(z0, z1)))) -> c5(*'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_s(cons_minus(z0)))) -> c5(*'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_*(x0, cons_s(cons_*(z0, z1)))) -> c5(*'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_s(x1))) -> c5(*'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_s(z0), cons_s(x1))) -> c5(*'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_s(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_minus(z0), cons_s(x1))) -> c5(*'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_s(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(x0, cons_s(0))) -> c5(*'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_s(x1))) -> c5(ENCARG(cons_s(x1))) ENCARG(cons_*(x0, cons_+(x1, 0))) -> c5(*'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_*(x0, cons_+(x1, cons_p(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_s(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_+(z0, z1)))) -> c5(*'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_+(x1, cons_minus(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_*(z0, z1)))) -> c5(*'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_*(x0, cons_+(0, x2))) -> c5(*'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_*(x0, cons_+(cons_p(z0), x2))) -> c5(*'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_s(z0), x2))) -> c5(*'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_+(z0, z1), x2))) -> c5(*'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_*(x0, cons_+(cons_minus(z0), x2))) -> c5(*'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_*(z0, z1), x2))) -> c5(*'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_*(cons_p(z0), cons_+(x1, x2))) -> c5(*'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_s(z0), cons_+(x1, x2))) -> c5(*'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_+(z0, z1), cons_+(x1, x2))) -> c5(*'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_minus(z0), cons_+(x1, x2))) -> c5(*'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_*(z0, z1), cons_+(x1, x2))) -> c5(*'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(0, cons_+(x1, x2))) -> c5(ENCARG(cons_+(x1, x2))) ENCARG(cons_*(x0, cons_minus(0))) -> c5(*'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_*(x0, cons_minus(cons_p(z0)))) -> c5(*'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_*(x0, cons_minus(cons_s(z0)))) -> c5(*'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_*(x0, cons_minus(cons_+(z0, z1)))) -> c5(*'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_minus(cons_minus(z0)))) -> c5(*'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_*(x0, cons_minus(cons_*(z0, z1)))) -> c5(*'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_minus(x1))) -> c5(*'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_s(z0), cons_minus(x1))) -> c5(*'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_minus(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_minus(z0), cons_minus(x1))) -> c5(*'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_minus(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_*(0, cons_minus(x1))) -> c5(ENCARG(cons_minus(x1))) ENCARG(cons_*(x0, cons_*(x1, 0))) -> c5(*'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_*(x0, cons_*(x1, cons_p(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_s(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_+(z0, z1)))) -> c5(*'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_*(x1, cons_minus(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_*(z0, z1)))) -> c5(*'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_*(x0, cons_*(0, x2))) -> c5(*'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_*(x0, cons_*(cons_p(z0), x2))) -> c5(*'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_s(z0), x2))) -> c5(*'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_+(z0, z1), x2))) -> c5(*'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_*(x0, cons_*(cons_minus(z0), x2))) -> c5(*'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_*(z0, z1), x2))) -> c5(*'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_*(cons_p(z0), cons_*(x1, x2))) -> c5(*'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_s(z0), cons_*(x1, x2))) -> c5(*'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_+(z0, z1), cons_*(x1, x2))) -> c5(*'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_minus(z0), cons_*(x1, x2))) -> c5(*'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_*(z0, z1), cons_*(x1, x2))) -> c5(*'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(0, cons_*(x1, x2))) -> c5(ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_+(x0, 0), x2)) -> c5(*'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_p(z0)), x2)) -> c5(*'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_s(z0)), x2)) -> c5(*'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_+(z0, z1)), x2)) -> c5(*'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_minus(z0)), x2)) -> c5(*'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_*(z0, z1)), x2)) -> c5(*'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_*(cons_+(0, x1), x2)) -> c5(*'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_p(z0), x1), x2)) -> c5(*'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_s(z0), x1), x2)) -> c5(*'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_+(z0, z1), x1), x2)) -> c5(*'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_minus(z0), x1), x2)) -> c5(*'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_*(z0, z1), x1), x2)) -> c5(*'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, x1), 0)) -> c5(*'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_*(cons_minus(x0), 0)) -> c5(*'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0)), ENCARG(0)) ENCARG(cons_*(cons_minus(0), x1)) -> c5(*'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_p(z0)), x1)) -> c5(*'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_s(z0)), x1)) -> c5(*'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_+(z0, z1)), x1)) -> c5(*'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_minus(z0)), x1)) -> c5(*'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_*(z0, z1)), x1)) -> c5(*'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1, c3_1, c11_1 ---------------------------------------- (257) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (258) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_+(cons_minus(0), x1)) -> c3(+'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_p(z0)), x1)) -> c3(+'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_s(z0)), x1)) -> c3(+'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_+(z0, z1)), x1)) -> c3(+'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_minus(z0)), x1)) -> c3(+'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_*(z0, z1)), x1)) -> c3(+'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(x0), 0)) -> c3(+'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) ENCARG(cons_+(cons_*(x0, 0), x2)) -> c3(+'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_p(z0)), x2)) -> c3(+'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_s(z0)), x2)) -> c3(+'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_+(z0, z1)), x2)) -> c3(+'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_minus(z0)), x2)) -> c3(+'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_*(z0, z1)), x2)) -> c3(+'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(0, x1), x2)) -> c3(+'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_p(z0), x1), x2)) -> c3(+'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_s(z0), x1), x2)) -> c3(+'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_+(z0, z1), x1), x2)) -> c3(+'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_minus(z0), x1), x2)) -> c3(+'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_*(z0, z1), x1), x2)) -> c3(+'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, x1), 0)) -> c3(+'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1))) ENCARG(cons_+(cons_p(z0), 0)) -> c3(+'(p(encArg(z0)), 0), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_s(z0), 0)) -> c3(+'(s(encArg(z0)), 0), ENCARG(cons_s(z0))) ENCARG(cons_+(0, 0)) -> c3(+'(0, 0)) ENCARG(cons_minus(cons_+(x0, 0))) -> c4(MINUS(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_minus(cons_+(x0, cons_p(z0)))) -> c4(MINUS(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_minus(cons_+(x0, cons_s(z0)))) -> c4(MINUS(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_minus(cons_+(x0, cons_+(z0, z1)))) -> c4(MINUS(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_+(x0, cons_minus(z0)))) -> c4(MINUS(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_+(x0, cons_*(z0, z1)))) -> c4(MINUS(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_+(0, x1))) -> c4(MINUS(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_minus(cons_+(cons_p(z0), x1))) -> c4(MINUS(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_minus(cons_+(cons_s(z0), x1))) -> c4(MINUS(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_minus(cons_+(cons_+(z0, z1), x1))) -> c4(MINUS(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_+(cons_minus(z0), x1))) -> c4(MINUS(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_minus(cons_+(cons_*(z0, z1), x1))) -> c4(MINUS(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_minus(cons_minus(cons_p(z0)))) -> c4(MINUS(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_minus(cons_minus(cons_s(z0)))) -> c4(MINUS(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_minus(cons_minus(cons_+(z0, z1)))) -> c4(MINUS(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_minus(cons_minus(cons_minus(z0)))) -> c4(MINUS(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_minus(cons_minus(cons_*(z0, z1)))) -> c4(MINUS(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_minus(cons_minus(0))) -> c11(MINUS(minus(0))) ENCARG(cons_minus(cons_minus(0))) -> c11(ENCARG(cons_minus(0))) ENCARG(cons_minus(cons_*(x0, 0))) -> c4(MINUS(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_minus(cons_*(x0, cons_p(z0)))) -> c4(MINUS(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_minus(cons_*(x0, cons_s(z0)))) -> c4(MINUS(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_minus(cons_*(x0, cons_+(z0, z1)))) -> c4(MINUS(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_*(x0, cons_minus(z0)))) -> c4(MINUS(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_*(x0, cons_*(z0, z1)))) -> c4(MINUS(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_*(0, x1))) -> c4(MINUS(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_minus(cons_*(cons_p(z0), x1))) -> c4(MINUS(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_minus(cons_*(cons_s(z0), x1))) -> c4(MINUS(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_minus(cons_*(cons_+(z0, z1), x1))) -> c4(MINUS(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_*(cons_minus(z0), x1))) -> c4(MINUS(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_minus(cons_*(cons_*(z0, z1), x1))) -> c4(MINUS(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_*(x0, cons_p(cons_p(z0)))) -> c5(*'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_*(x0, cons_p(cons_s(z0)))) -> c5(*'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_*(x0, cons_p(cons_+(z0, z1)))) -> c5(*'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_p(cons_minus(z0)))) -> c5(*'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_*(x0, cons_p(cons_*(z0, z1)))) -> c5(*'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_p(x1))) -> c5(*'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_s(z0), cons_p(x1))) -> c5(*'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_p(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_minus(z0), cons_p(x1))) -> c5(*'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_p(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_p(0))) -> c5(*'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_p(x1))) -> c5(ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_s(cons_p(z0)))) -> c5(*'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_*(x0, cons_s(cons_s(z0)))) -> c5(*'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_*(x0, cons_s(cons_+(z0, z1)))) -> c5(*'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_s(cons_minus(z0)))) -> c5(*'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_*(x0, cons_s(cons_*(z0, z1)))) -> c5(*'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_s(x1))) -> c5(*'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_s(z0), cons_s(x1))) -> c5(*'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_s(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_minus(z0), cons_s(x1))) -> c5(*'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_s(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(x0, cons_s(0))) -> c5(*'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_s(x1))) -> c5(ENCARG(cons_s(x1))) ENCARG(cons_*(x0, cons_+(x1, 0))) -> c5(*'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_*(x0, cons_+(x1, cons_p(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_s(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_+(z0, z1)))) -> c5(*'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_+(x1, cons_minus(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_*(z0, z1)))) -> c5(*'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_*(x0, cons_+(0, x2))) -> c5(*'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_*(x0, cons_+(cons_p(z0), x2))) -> c5(*'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_s(z0), x2))) -> c5(*'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_+(z0, z1), x2))) -> c5(*'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_*(x0, cons_+(cons_minus(z0), x2))) -> c5(*'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_*(z0, z1), x2))) -> c5(*'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_*(cons_p(z0), cons_+(x1, x2))) -> c5(*'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_s(z0), cons_+(x1, x2))) -> c5(*'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_+(z0, z1), cons_+(x1, x2))) -> c5(*'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_minus(z0), cons_+(x1, x2))) -> c5(*'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_*(z0, z1), cons_+(x1, x2))) -> c5(*'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(0, cons_+(x1, x2))) -> c5(ENCARG(cons_+(x1, x2))) ENCARG(cons_*(x0, cons_minus(0))) -> c5(*'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_*(x0, cons_minus(cons_p(z0)))) -> c5(*'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_*(x0, cons_minus(cons_s(z0)))) -> c5(*'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_*(x0, cons_minus(cons_+(z0, z1)))) -> c5(*'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_minus(cons_minus(z0)))) -> c5(*'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_*(x0, cons_minus(cons_*(z0, z1)))) -> c5(*'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_minus(x1))) -> c5(*'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_s(z0), cons_minus(x1))) -> c5(*'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_minus(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_minus(z0), cons_minus(x1))) -> c5(*'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_minus(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_*(0, cons_minus(x1))) -> c5(ENCARG(cons_minus(x1))) ENCARG(cons_*(x0, cons_*(x1, 0))) -> c5(*'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_*(x0, cons_*(x1, cons_p(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_s(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_+(z0, z1)))) -> c5(*'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_*(x1, cons_minus(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_*(z0, z1)))) -> c5(*'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_*(x0, cons_*(0, x2))) -> c5(*'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_*(x0, cons_*(cons_p(z0), x2))) -> c5(*'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_s(z0), x2))) -> c5(*'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_+(z0, z1), x2))) -> c5(*'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_*(x0, cons_*(cons_minus(z0), x2))) -> c5(*'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_*(z0, z1), x2))) -> c5(*'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_*(cons_p(z0), cons_*(x1, x2))) -> c5(*'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_s(z0), cons_*(x1, x2))) -> c5(*'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_+(z0, z1), cons_*(x1, x2))) -> c5(*'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_minus(z0), cons_*(x1, x2))) -> c5(*'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_*(z0, z1), cons_*(x1, x2))) -> c5(*'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(0, cons_*(x1, x2))) -> c5(ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_+(x0, 0), x2)) -> c5(*'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_p(z0)), x2)) -> c5(*'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_s(z0)), x2)) -> c5(*'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_+(z0, z1)), x2)) -> c5(*'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_minus(z0)), x2)) -> c5(*'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_*(z0, z1)), x2)) -> c5(*'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_*(cons_+(0, x1), x2)) -> c5(*'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_p(z0), x1), x2)) -> c5(*'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_s(z0), x1), x2)) -> c5(*'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_+(z0, z1), x1), x2)) -> c5(*'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_minus(z0), x1), x2)) -> c5(*'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_*(z0, z1), x1), x2)) -> c5(*'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, x1), 0)) -> c5(*'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_*(cons_minus(0), x1)) -> c5(*'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_p(z0)), x1)) -> c5(*'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_s(z0)), x1)) -> c5(*'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_+(z0, z1)), x1)) -> c5(*'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_minus(z0)), x1)) -> c5(*'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_*(z0, z1)), x1)) -> c5(*'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_*(cons_minus(x0), 0)) -> c5(*'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1, c3_1, c11_1 ---------------------------------------- (259) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_*(cons_*(z0, z1), x1)) -> c5(*'(*(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_*(z0, z1)), ENCARG(x1)) by ENCARG(cons_*(cons_*(x0, x1), 0)) -> c5(*'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1)), ENCARG(0)) ENCARG(cons_*(cons_*(x0, x1), cons_p(z0))) -> c5(*'(*(encArg(x0), encArg(x1)), p(encArg(z0))), ENCARG(cons_*(x0, x1)), ENCARG(cons_p(z0))) ENCARG(cons_*(cons_*(x0, x1), cons_s(z0))) -> c5(*'(*(encArg(x0), encArg(x1)), s(encArg(z0))), ENCARG(cons_*(x0, x1)), ENCARG(cons_s(z0))) ENCARG(cons_*(cons_*(x0, x1), cons_+(z0, z1))) -> c5(*'(*(encArg(x0), encArg(x1)), +(encArg(z0), encArg(z1))), ENCARG(cons_*(x0, x1)), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(cons_*(x0, x1), cons_minus(z0))) -> c5(*'(*(encArg(x0), encArg(x1)), minus(encArg(z0))), ENCARG(cons_*(x0, x1)), ENCARG(cons_minus(z0))) ENCARG(cons_*(cons_*(x0, x1), cons_*(z0, z1))) -> c5(*'(*(encArg(x0), encArg(x1)), *(encArg(z0), encArg(z1))), ENCARG(cons_*(x0, x1)), ENCARG(cons_*(z0, z1))) ENCARG(cons_*(cons_*(x0, 0), x2)) -> c5(*'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_*(cons_*(x0, cons_p(z0)), x2)) -> c5(*'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_*(cons_*(x0, cons_s(z0)), x2)) -> c5(*'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_*(cons_*(x0, cons_+(z0, z1)), x2)) -> c5(*'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_*(cons_*(x0, cons_minus(z0)), x2)) -> c5(*'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_*(cons_*(x0, cons_*(z0, z1)), x2)) -> c5(*'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_*(cons_*(0, x1), x2)) -> c5(*'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_*(cons_*(cons_p(z0), x1), x2)) -> c5(*'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_*(cons_s(z0), x1), x2)) -> c5(*'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_*(cons_+(z0, z1), x1), x2)) -> c5(*'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_*(cons_*(cons_minus(z0), x1), x2)) -> c5(*'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_*(cons_*(z0, z1), x1), x2)) -> c5(*'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) ---------------------------------------- (260) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_+(cons_minus(0), x1)) -> c3(+'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_p(z0)), x1)) -> c3(+'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_s(z0)), x1)) -> c3(+'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_+(z0, z1)), x1)) -> c3(+'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_minus(z0)), x1)) -> c3(+'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_*(z0, z1)), x1)) -> c3(+'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(x0), 0)) -> c3(+'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) ENCARG(cons_+(cons_*(x0, 0), x2)) -> c3(+'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_p(z0)), x2)) -> c3(+'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_s(z0)), x2)) -> c3(+'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_+(z0, z1)), x2)) -> c3(+'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_minus(z0)), x2)) -> c3(+'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_*(z0, z1)), x2)) -> c3(+'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(0, x1), x2)) -> c3(+'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_p(z0), x1), x2)) -> c3(+'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_s(z0), x1), x2)) -> c3(+'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_+(z0, z1), x1), x2)) -> c3(+'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_minus(z0), x1), x2)) -> c3(+'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_*(z0, z1), x1), x2)) -> c3(+'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, x1), 0)) -> c3(+'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1))) ENCARG(cons_+(cons_p(z0), 0)) -> c3(+'(p(encArg(z0)), 0), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_s(z0), 0)) -> c3(+'(s(encArg(z0)), 0), ENCARG(cons_s(z0))) ENCARG(cons_+(0, 0)) -> c3(+'(0, 0)) ENCARG(cons_minus(cons_+(x0, 0))) -> c4(MINUS(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_minus(cons_+(x0, cons_p(z0)))) -> c4(MINUS(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_minus(cons_+(x0, cons_s(z0)))) -> c4(MINUS(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_minus(cons_+(x0, cons_+(z0, z1)))) -> c4(MINUS(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_+(x0, cons_minus(z0)))) -> c4(MINUS(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_+(x0, cons_*(z0, z1)))) -> c4(MINUS(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_+(0, x1))) -> c4(MINUS(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_minus(cons_+(cons_p(z0), x1))) -> c4(MINUS(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_minus(cons_+(cons_s(z0), x1))) -> c4(MINUS(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_minus(cons_+(cons_+(z0, z1), x1))) -> c4(MINUS(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_+(cons_minus(z0), x1))) -> c4(MINUS(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_minus(cons_+(cons_*(z0, z1), x1))) -> c4(MINUS(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_minus(cons_minus(cons_p(z0)))) -> c4(MINUS(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_minus(cons_minus(cons_s(z0)))) -> c4(MINUS(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_minus(cons_minus(cons_+(z0, z1)))) -> c4(MINUS(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_minus(cons_minus(cons_minus(z0)))) -> c4(MINUS(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_minus(cons_minus(cons_*(z0, z1)))) -> c4(MINUS(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_minus(cons_minus(0))) -> c11(MINUS(minus(0))) ENCARG(cons_minus(cons_minus(0))) -> c11(ENCARG(cons_minus(0))) ENCARG(cons_minus(cons_*(x0, 0))) -> c4(MINUS(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_minus(cons_*(x0, cons_p(z0)))) -> c4(MINUS(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_minus(cons_*(x0, cons_s(z0)))) -> c4(MINUS(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_minus(cons_*(x0, cons_+(z0, z1)))) -> c4(MINUS(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_*(x0, cons_minus(z0)))) -> c4(MINUS(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_*(x0, cons_*(z0, z1)))) -> c4(MINUS(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_*(0, x1))) -> c4(MINUS(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_minus(cons_*(cons_p(z0), x1))) -> c4(MINUS(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_minus(cons_*(cons_s(z0), x1))) -> c4(MINUS(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_minus(cons_*(cons_+(z0, z1), x1))) -> c4(MINUS(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_*(cons_minus(z0), x1))) -> c4(MINUS(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_minus(cons_*(cons_*(z0, z1), x1))) -> c4(MINUS(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_*(x0, cons_p(cons_p(z0)))) -> c5(*'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_*(x0, cons_p(cons_s(z0)))) -> c5(*'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_*(x0, cons_p(cons_+(z0, z1)))) -> c5(*'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_p(cons_minus(z0)))) -> c5(*'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_*(x0, cons_p(cons_*(z0, z1)))) -> c5(*'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_p(x1))) -> c5(*'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_s(z0), cons_p(x1))) -> c5(*'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_p(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_minus(z0), cons_p(x1))) -> c5(*'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_p(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_p(0))) -> c5(*'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_p(x1))) -> c5(ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_s(cons_p(z0)))) -> c5(*'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_*(x0, cons_s(cons_s(z0)))) -> c5(*'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_*(x0, cons_s(cons_+(z0, z1)))) -> c5(*'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_s(cons_minus(z0)))) -> c5(*'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_*(x0, cons_s(cons_*(z0, z1)))) -> c5(*'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_s(x1))) -> c5(*'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_s(z0), cons_s(x1))) -> c5(*'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_s(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_minus(z0), cons_s(x1))) -> c5(*'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_s(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(x0, cons_s(0))) -> c5(*'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_s(x1))) -> c5(ENCARG(cons_s(x1))) ENCARG(cons_*(x0, cons_+(x1, 0))) -> c5(*'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_*(x0, cons_+(x1, cons_p(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_s(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_+(z0, z1)))) -> c5(*'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_+(x1, cons_minus(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_*(z0, z1)))) -> c5(*'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_*(x0, cons_+(0, x2))) -> c5(*'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_*(x0, cons_+(cons_p(z0), x2))) -> c5(*'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_s(z0), x2))) -> c5(*'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_+(z0, z1), x2))) -> c5(*'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_*(x0, cons_+(cons_minus(z0), x2))) -> c5(*'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_*(z0, z1), x2))) -> c5(*'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_*(cons_p(z0), cons_+(x1, x2))) -> c5(*'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_s(z0), cons_+(x1, x2))) -> c5(*'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_+(z0, z1), cons_+(x1, x2))) -> c5(*'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_minus(z0), cons_+(x1, x2))) -> c5(*'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_*(z0, z1), cons_+(x1, x2))) -> c5(*'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(0, cons_+(x1, x2))) -> c5(ENCARG(cons_+(x1, x2))) ENCARG(cons_*(x0, cons_minus(0))) -> c5(*'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_*(x0, cons_minus(cons_p(z0)))) -> c5(*'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_*(x0, cons_minus(cons_s(z0)))) -> c5(*'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_*(x0, cons_minus(cons_+(z0, z1)))) -> c5(*'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_minus(cons_minus(z0)))) -> c5(*'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_*(x0, cons_minus(cons_*(z0, z1)))) -> c5(*'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_minus(x1))) -> c5(*'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_s(z0), cons_minus(x1))) -> c5(*'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_minus(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_minus(z0), cons_minus(x1))) -> c5(*'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_minus(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_*(0, cons_minus(x1))) -> c5(ENCARG(cons_minus(x1))) ENCARG(cons_*(x0, cons_*(x1, 0))) -> c5(*'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_*(x0, cons_*(x1, cons_p(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_s(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_+(z0, z1)))) -> c5(*'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_*(x1, cons_minus(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_*(z0, z1)))) -> c5(*'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_*(x0, cons_*(0, x2))) -> c5(*'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_*(x0, cons_*(cons_p(z0), x2))) -> c5(*'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_s(z0), x2))) -> c5(*'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_+(z0, z1), x2))) -> c5(*'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_*(x0, cons_*(cons_minus(z0), x2))) -> c5(*'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_*(z0, z1), x2))) -> c5(*'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_*(cons_p(z0), cons_*(x1, x2))) -> c5(*'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_s(z0), cons_*(x1, x2))) -> c5(*'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_+(z0, z1), cons_*(x1, x2))) -> c5(*'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_minus(z0), cons_*(x1, x2))) -> c5(*'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_*(z0, z1), cons_*(x1, x2))) -> c5(*'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(0, cons_*(x1, x2))) -> c5(ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_+(x0, 0), x2)) -> c5(*'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_p(z0)), x2)) -> c5(*'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_s(z0)), x2)) -> c5(*'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_+(z0, z1)), x2)) -> c5(*'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_minus(z0)), x2)) -> c5(*'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_*(z0, z1)), x2)) -> c5(*'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_*(cons_+(0, x1), x2)) -> c5(*'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_p(z0), x1), x2)) -> c5(*'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_s(z0), x1), x2)) -> c5(*'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_+(z0, z1), x1), x2)) -> c5(*'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_minus(z0), x1), x2)) -> c5(*'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_*(z0, z1), x1), x2)) -> c5(*'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, x1), 0)) -> c5(*'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_*(cons_minus(0), x1)) -> c5(*'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_p(z0)), x1)) -> c5(*'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_s(z0)), x1)) -> c5(*'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_+(z0, z1)), x1)) -> c5(*'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_minus(z0)), x1)) -> c5(*'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_*(z0, z1)), x1)) -> c5(*'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_*(cons_minus(x0), 0)) -> c5(*'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) ENCARG(cons_*(cons_*(x0, x1), 0)) -> c5(*'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1)), ENCARG(0)) ENCARG(cons_*(cons_*(x0, 0), x2)) -> c5(*'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_*(cons_*(x0, cons_p(z0)), x2)) -> c5(*'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_*(cons_*(x0, cons_s(z0)), x2)) -> c5(*'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_*(cons_*(x0, cons_+(z0, z1)), x2)) -> c5(*'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_*(cons_*(x0, cons_minus(z0)), x2)) -> c5(*'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_*(cons_*(x0, cons_*(z0, z1)), x2)) -> c5(*'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_*(cons_*(0, x1), x2)) -> c5(*'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_*(cons_*(cons_p(z0), x1), x2)) -> c5(*'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_*(cons_s(z0), x1), x2)) -> c5(*'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_*(cons_+(z0, z1), x1), x2)) -> c5(*'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_*(cons_*(cons_minus(z0), x1), x2)) -> c5(*'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_*(cons_*(z0, z1), x1), x2)) -> c5(*'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1, c3_1, c11_1 ---------------------------------------- (261) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (262) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_+(cons_minus(0), x1)) -> c3(+'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_p(z0)), x1)) -> c3(+'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_s(z0)), x1)) -> c3(+'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_+(z0, z1)), x1)) -> c3(+'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_minus(z0)), x1)) -> c3(+'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_*(z0, z1)), x1)) -> c3(+'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(x0), 0)) -> c3(+'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) ENCARG(cons_+(cons_*(x0, 0), x2)) -> c3(+'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_p(z0)), x2)) -> c3(+'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_s(z0)), x2)) -> c3(+'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_+(z0, z1)), x2)) -> c3(+'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_minus(z0)), x2)) -> c3(+'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_*(z0, z1)), x2)) -> c3(+'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(0, x1), x2)) -> c3(+'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_p(z0), x1), x2)) -> c3(+'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_s(z0), x1), x2)) -> c3(+'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_+(z0, z1), x1), x2)) -> c3(+'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_minus(z0), x1), x2)) -> c3(+'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_*(z0, z1), x1), x2)) -> c3(+'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, x1), 0)) -> c3(+'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1))) ENCARG(cons_+(cons_p(z0), 0)) -> c3(+'(p(encArg(z0)), 0), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_s(z0), 0)) -> c3(+'(s(encArg(z0)), 0), ENCARG(cons_s(z0))) ENCARG(cons_+(0, 0)) -> c3(+'(0, 0)) ENCARG(cons_minus(cons_+(x0, 0))) -> c4(MINUS(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_minus(cons_+(x0, cons_p(z0)))) -> c4(MINUS(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_minus(cons_+(x0, cons_s(z0)))) -> c4(MINUS(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_minus(cons_+(x0, cons_+(z0, z1)))) -> c4(MINUS(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_+(x0, cons_minus(z0)))) -> c4(MINUS(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_+(x0, cons_*(z0, z1)))) -> c4(MINUS(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_+(0, x1))) -> c4(MINUS(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_minus(cons_+(cons_p(z0), x1))) -> c4(MINUS(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_minus(cons_+(cons_s(z0), x1))) -> c4(MINUS(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_minus(cons_+(cons_+(z0, z1), x1))) -> c4(MINUS(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_+(cons_minus(z0), x1))) -> c4(MINUS(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_minus(cons_+(cons_*(z0, z1), x1))) -> c4(MINUS(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_minus(cons_minus(cons_p(z0)))) -> c4(MINUS(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_minus(cons_minus(cons_s(z0)))) -> c4(MINUS(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_minus(cons_minus(cons_+(z0, z1)))) -> c4(MINUS(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_minus(cons_minus(cons_minus(z0)))) -> c4(MINUS(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_minus(cons_minus(cons_*(z0, z1)))) -> c4(MINUS(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_minus(cons_minus(0))) -> c11(MINUS(minus(0))) ENCARG(cons_minus(cons_minus(0))) -> c11(ENCARG(cons_minus(0))) ENCARG(cons_minus(cons_*(x0, 0))) -> c4(MINUS(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_minus(cons_*(x0, cons_p(z0)))) -> c4(MINUS(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_minus(cons_*(x0, cons_s(z0)))) -> c4(MINUS(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_minus(cons_*(x0, cons_+(z0, z1)))) -> c4(MINUS(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_*(x0, cons_minus(z0)))) -> c4(MINUS(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_*(x0, cons_*(z0, z1)))) -> c4(MINUS(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_*(0, x1))) -> c4(MINUS(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_minus(cons_*(cons_p(z0), x1))) -> c4(MINUS(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_minus(cons_*(cons_s(z0), x1))) -> c4(MINUS(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_minus(cons_*(cons_+(z0, z1), x1))) -> c4(MINUS(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_*(cons_minus(z0), x1))) -> c4(MINUS(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_minus(cons_*(cons_*(z0, z1), x1))) -> c4(MINUS(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_*(x0, cons_p(cons_p(z0)))) -> c5(*'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_*(x0, cons_p(cons_s(z0)))) -> c5(*'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_*(x0, cons_p(cons_+(z0, z1)))) -> c5(*'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_p(cons_minus(z0)))) -> c5(*'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_*(x0, cons_p(cons_*(z0, z1)))) -> c5(*'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_p(x1))) -> c5(*'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_s(z0), cons_p(x1))) -> c5(*'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_p(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_minus(z0), cons_p(x1))) -> c5(*'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_p(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_p(0))) -> c5(*'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_p(x1))) -> c5(ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_s(cons_p(z0)))) -> c5(*'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_*(x0, cons_s(cons_s(z0)))) -> c5(*'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_*(x0, cons_s(cons_+(z0, z1)))) -> c5(*'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_s(cons_minus(z0)))) -> c5(*'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_*(x0, cons_s(cons_*(z0, z1)))) -> c5(*'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_s(x1))) -> c5(*'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_s(z0), cons_s(x1))) -> c5(*'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_s(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_minus(z0), cons_s(x1))) -> c5(*'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_s(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(x0, cons_s(0))) -> c5(*'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_s(x1))) -> c5(ENCARG(cons_s(x1))) ENCARG(cons_*(x0, cons_+(x1, 0))) -> c5(*'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_*(x0, cons_+(x1, cons_p(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_s(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_+(z0, z1)))) -> c5(*'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_+(x1, cons_minus(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_*(z0, z1)))) -> c5(*'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_*(x0, cons_+(0, x2))) -> c5(*'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_*(x0, cons_+(cons_p(z0), x2))) -> c5(*'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_s(z0), x2))) -> c5(*'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_+(z0, z1), x2))) -> c5(*'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_*(x0, cons_+(cons_minus(z0), x2))) -> c5(*'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_*(z0, z1), x2))) -> c5(*'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_*(cons_p(z0), cons_+(x1, x2))) -> c5(*'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_s(z0), cons_+(x1, x2))) -> c5(*'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_+(z0, z1), cons_+(x1, x2))) -> c5(*'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_minus(z0), cons_+(x1, x2))) -> c5(*'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_*(z0, z1), cons_+(x1, x2))) -> c5(*'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(0, cons_+(x1, x2))) -> c5(ENCARG(cons_+(x1, x2))) ENCARG(cons_*(x0, cons_minus(0))) -> c5(*'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_*(x0, cons_minus(cons_p(z0)))) -> c5(*'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_*(x0, cons_minus(cons_s(z0)))) -> c5(*'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_*(x0, cons_minus(cons_+(z0, z1)))) -> c5(*'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_minus(cons_minus(z0)))) -> c5(*'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_*(x0, cons_minus(cons_*(z0, z1)))) -> c5(*'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_minus(x1))) -> c5(*'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_s(z0), cons_minus(x1))) -> c5(*'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_minus(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_minus(z0), cons_minus(x1))) -> c5(*'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_minus(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_*(0, cons_minus(x1))) -> c5(ENCARG(cons_minus(x1))) ENCARG(cons_*(x0, cons_*(x1, 0))) -> c5(*'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_*(x0, cons_*(x1, cons_p(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_s(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_+(z0, z1)))) -> c5(*'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_*(x1, cons_minus(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_*(z0, z1)))) -> c5(*'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_*(x0, cons_*(0, x2))) -> c5(*'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_*(x0, cons_*(cons_p(z0), x2))) -> c5(*'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_s(z0), x2))) -> c5(*'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_+(z0, z1), x2))) -> c5(*'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_*(x0, cons_*(cons_minus(z0), x2))) -> c5(*'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_*(z0, z1), x2))) -> c5(*'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_*(cons_p(z0), cons_*(x1, x2))) -> c5(*'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_s(z0), cons_*(x1, x2))) -> c5(*'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_+(z0, z1), cons_*(x1, x2))) -> c5(*'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_minus(z0), cons_*(x1, x2))) -> c5(*'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_*(z0, z1), cons_*(x1, x2))) -> c5(*'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(0, cons_*(x1, x2))) -> c5(ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_+(x0, 0), x2)) -> c5(*'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_p(z0)), x2)) -> c5(*'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_s(z0)), x2)) -> c5(*'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_+(z0, z1)), x2)) -> c5(*'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_minus(z0)), x2)) -> c5(*'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_*(z0, z1)), x2)) -> c5(*'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_*(cons_+(0, x1), x2)) -> c5(*'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_p(z0), x1), x2)) -> c5(*'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_s(z0), x1), x2)) -> c5(*'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_+(z0, z1), x1), x2)) -> c5(*'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_minus(z0), x1), x2)) -> c5(*'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_*(z0, z1), x1), x2)) -> c5(*'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, x1), 0)) -> c5(*'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_*(cons_minus(0), x1)) -> c5(*'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_p(z0)), x1)) -> c5(*'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_s(z0)), x1)) -> c5(*'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_+(z0, z1)), x1)) -> c5(*'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_minus(z0)), x1)) -> c5(*'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_*(z0, z1)), x1)) -> c5(*'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_*(cons_minus(x0), 0)) -> c5(*'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) ENCARG(cons_*(cons_*(x0, 0), x2)) -> c5(*'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_*(cons_*(x0, cons_p(z0)), x2)) -> c5(*'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_*(cons_*(x0, cons_s(z0)), x2)) -> c5(*'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_*(cons_*(x0, cons_+(z0, z1)), x2)) -> c5(*'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_*(cons_*(x0, cons_minus(z0)), x2)) -> c5(*'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_*(cons_*(x0, cons_*(z0, z1)), x2)) -> c5(*'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_*(cons_*(0, x1), x2)) -> c5(*'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_*(cons_*(cons_p(z0), x1), x2)) -> c5(*'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_*(cons_s(z0), x1), x2)) -> c5(*'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_*(cons_+(z0, z1), x1), x2)) -> c5(*'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_*(cons_*(cons_minus(z0), x1), x2)) -> c5(*'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_*(cons_*(z0, z1), x1), x2)) -> c5(*'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_*(cons_*(x0, x1), 0)) -> c5(*'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_2, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1, c3_1, c11_1 ---------------------------------------- (263) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_*(x0, 0)) -> c5(*'(encArg(x0), 0), ENCARG(x0)) by ENCARG(cons_*(0, 0)) -> c5(*'(0, 0), ENCARG(0)) ENCARG(cons_*(cons_p(z0), 0)) -> c5(*'(p(encArg(z0)), 0), ENCARG(cons_p(z0))) ENCARG(cons_*(cons_s(z0), 0)) -> c5(*'(s(encArg(z0)), 0), ENCARG(cons_s(z0))) ENCARG(cons_*(cons_+(z0, z1), 0)) -> c5(*'(+(encArg(z0), encArg(z1)), 0), ENCARG(cons_+(z0, z1))) ENCARG(cons_*(cons_minus(z0), 0)) -> c5(*'(minus(encArg(z0)), 0), ENCARG(cons_minus(z0))) ENCARG(cons_*(cons_*(z0, z1), 0)) -> c5(*'(*(encArg(z0), encArg(z1)), 0), ENCARG(cons_*(z0, z1))) ---------------------------------------- (264) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_+(cons_minus(0), x1)) -> c3(+'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_p(z0)), x1)) -> c3(+'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_s(z0)), x1)) -> c3(+'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_+(z0, z1)), x1)) -> c3(+'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_minus(z0)), x1)) -> c3(+'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_*(z0, z1)), x1)) -> c3(+'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(x0), 0)) -> c3(+'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) ENCARG(cons_+(cons_*(x0, 0), x2)) -> c3(+'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_p(z0)), x2)) -> c3(+'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_s(z0)), x2)) -> c3(+'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_+(z0, z1)), x2)) -> c3(+'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_minus(z0)), x2)) -> c3(+'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_*(z0, z1)), x2)) -> c3(+'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(0, x1), x2)) -> c3(+'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_p(z0), x1), x2)) -> c3(+'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_s(z0), x1), x2)) -> c3(+'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_+(z0, z1), x1), x2)) -> c3(+'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_minus(z0), x1), x2)) -> c3(+'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_*(z0, z1), x1), x2)) -> c3(+'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, x1), 0)) -> c3(+'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1))) ENCARG(cons_+(cons_p(z0), 0)) -> c3(+'(p(encArg(z0)), 0), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_s(z0), 0)) -> c3(+'(s(encArg(z0)), 0), ENCARG(cons_s(z0))) ENCARG(cons_+(0, 0)) -> c3(+'(0, 0)) ENCARG(cons_minus(cons_+(x0, 0))) -> c4(MINUS(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_minus(cons_+(x0, cons_p(z0)))) -> c4(MINUS(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_minus(cons_+(x0, cons_s(z0)))) -> c4(MINUS(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_minus(cons_+(x0, cons_+(z0, z1)))) -> c4(MINUS(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_+(x0, cons_minus(z0)))) -> c4(MINUS(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_+(x0, cons_*(z0, z1)))) -> c4(MINUS(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_+(0, x1))) -> c4(MINUS(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_minus(cons_+(cons_p(z0), x1))) -> c4(MINUS(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_minus(cons_+(cons_s(z0), x1))) -> c4(MINUS(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_minus(cons_+(cons_+(z0, z1), x1))) -> c4(MINUS(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_+(cons_minus(z0), x1))) -> c4(MINUS(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_minus(cons_+(cons_*(z0, z1), x1))) -> c4(MINUS(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_minus(cons_minus(cons_p(z0)))) -> c4(MINUS(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_minus(cons_minus(cons_s(z0)))) -> c4(MINUS(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_minus(cons_minus(cons_+(z0, z1)))) -> c4(MINUS(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_minus(cons_minus(cons_minus(z0)))) -> c4(MINUS(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_minus(cons_minus(cons_*(z0, z1)))) -> c4(MINUS(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_minus(cons_minus(0))) -> c11(MINUS(minus(0))) ENCARG(cons_minus(cons_minus(0))) -> c11(ENCARG(cons_minus(0))) ENCARG(cons_minus(cons_*(x0, 0))) -> c4(MINUS(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_minus(cons_*(x0, cons_p(z0)))) -> c4(MINUS(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_minus(cons_*(x0, cons_s(z0)))) -> c4(MINUS(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_minus(cons_*(x0, cons_+(z0, z1)))) -> c4(MINUS(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_*(x0, cons_minus(z0)))) -> c4(MINUS(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_*(x0, cons_*(z0, z1)))) -> c4(MINUS(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_*(0, x1))) -> c4(MINUS(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_minus(cons_*(cons_p(z0), x1))) -> c4(MINUS(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_minus(cons_*(cons_s(z0), x1))) -> c4(MINUS(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_minus(cons_*(cons_+(z0, z1), x1))) -> c4(MINUS(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_*(cons_minus(z0), x1))) -> c4(MINUS(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_minus(cons_*(cons_*(z0, z1), x1))) -> c4(MINUS(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_*(x0, cons_p(cons_p(z0)))) -> c5(*'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_*(x0, cons_p(cons_s(z0)))) -> c5(*'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_*(x0, cons_p(cons_+(z0, z1)))) -> c5(*'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_p(cons_minus(z0)))) -> c5(*'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_*(x0, cons_p(cons_*(z0, z1)))) -> c5(*'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_p(x1))) -> c5(*'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_s(z0), cons_p(x1))) -> c5(*'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_p(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_minus(z0), cons_p(x1))) -> c5(*'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_p(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_p(0))) -> c5(*'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_p(x1))) -> c5(ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_s(cons_p(z0)))) -> c5(*'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_*(x0, cons_s(cons_s(z0)))) -> c5(*'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_*(x0, cons_s(cons_+(z0, z1)))) -> c5(*'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_s(cons_minus(z0)))) -> c5(*'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_*(x0, cons_s(cons_*(z0, z1)))) -> c5(*'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_s(x1))) -> c5(*'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_s(z0), cons_s(x1))) -> c5(*'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_s(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_minus(z0), cons_s(x1))) -> c5(*'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_s(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(x0, cons_s(0))) -> c5(*'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_s(x1))) -> c5(ENCARG(cons_s(x1))) ENCARG(cons_*(x0, cons_+(x1, 0))) -> c5(*'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_*(x0, cons_+(x1, cons_p(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_s(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_+(z0, z1)))) -> c5(*'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_+(x1, cons_minus(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_*(z0, z1)))) -> c5(*'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_*(x0, cons_+(0, x2))) -> c5(*'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_*(x0, cons_+(cons_p(z0), x2))) -> c5(*'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_s(z0), x2))) -> c5(*'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_+(z0, z1), x2))) -> c5(*'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_*(x0, cons_+(cons_minus(z0), x2))) -> c5(*'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_*(z0, z1), x2))) -> c5(*'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_*(cons_p(z0), cons_+(x1, x2))) -> c5(*'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_s(z0), cons_+(x1, x2))) -> c5(*'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_+(z0, z1), cons_+(x1, x2))) -> c5(*'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_minus(z0), cons_+(x1, x2))) -> c5(*'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_*(z0, z1), cons_+(x1, x2))) -> c5(*'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(0, cons_+(x1, x2))) -> c5(ENCARG(cons_+(x1, x2))) ENCARG(cons_*(x0, cons_minus(0))) -> c5(*'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_*(x0, cons_minus(cons_p(z0)))) -> c5(*'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_*(x0, cons_minus(cons_s(z0)))) -> c5(*'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_*(x0, cons_minus(cons_+(z0, z1)))) -> c5(*'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_minus(cons_minus(z0)))) -> c5(*'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_*(x0, cons_minus(cons_*(z0, z1)))) -> c5(*'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_minus(x1))) -> c5(*'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_s(z0), cons_minus(x1))) -> c5(*'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_minus(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_minus(z0), cons_minus(x1))) -> c5(*'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_minus(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_*(0, cons_minus(x1))) -> c5(ENCARG(cons_minus(x1))) ENCARG(cons_*(x0, cons_*(x1, 0))) -> c5(*'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_*(x0, cons_*(x1, cons_p(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_s(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_+(z0, z1)))) -> c5(*'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_*(x1, cons_minus(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_*(z0, z1)))) -> c5(*'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_*(x0, cons_*(0, x2))) -> c5(*'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_*(x0, cons_*(cons_p(z0), x2))) -> c5(*'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_s(z0), x2))) -> c5(*'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_+(z0, z1), x2))) -> c5(*'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_*(x0, cons_*(cons_minus(z0), x2))) -> c5(*'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_*(z0, z1), x2))) -> c5(*'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_*(cons_p(z0), cons_*(x1, x2))) -> c5(*'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_s(z0), cons_*(x1, x2))) -> c5(*'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_+(z0, z1), cons_*(x1, x2))) -> c5(*'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_minus(z0), cons_*(x1, x2))) -> c5(*'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_*(z0, z1), cons_*(x1, x2))) -> c5(*'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(0, cons_*(x1, x2))) -> c5(ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_+(x0, 0), x2)) -> c5(*'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_p(z0)), x2)) -> c5(*'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_s(z0)), x2)) -> c5(*'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_+(z0, z1)), x2)) -> c5(*'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_minus(z0)), x2)) -> c5(*'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_*(z0, z1)), x2)) -> c5(*'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_*(cons_+(0, x1), x2)) -> c5(*'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_p(z0), x1), x2)) -> c5(*'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_s(z0), x1), x2)) -> c5(*'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_+(z0, z1), x1), x2)) -> c5(*'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_minus(z0), x1), x2)) -> c5(*'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_*(z0, z1), x1), x2)) -> c5(*'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, x1), 0)) -> c5(*'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_*(cons_minus(0), x1)) -> c5(*'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_p(z0)), x1)) -> c5(*'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_s(z0)), x1)) -> c5(*'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_+(z0, z1)), x1)) -> c5(*'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_minus(z0)), x1)) -> c5(*'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_*(z0, z1)), x1)) -> c5(*'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_*(cons_minus(x0), 0)) -> c5(*'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) ENCARG(cons_*(cons_*(x0, 0), x2)) -> c5(*'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_*(cons_*(x0, cons_p(z0)), x2)) -> c5(*'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_*(cons_*(x0, cons_s(z0)), x2)) -> c5(*'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_*(cons_*(x0, cons_+(z0, z1)), x2)) -> c5(*'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_*(cons_*(x0, cons_minus(z0)), x2)) -> c5(*'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_*(cons_*(x0, cons_*(z0, z1)), x2)) -> c5(*'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_*(cons_*(0, x1), x2)) -> c5(*'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_*(cons_*(cons_p(z0), x1), x2)) -> c5(*'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_*(cons_s(z0), x1), x2)) -> c5(*'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_*(cons_+(z0, z1), x1), x2)) -> c5(*'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_*(cons_*(cons_minus(z0), x1), x2)) -> c5(*'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_*(cons_*(z0, z1), x1), x2)) -> c5(*'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_*(cons_*(x0, x1), 0)) -> c5(*'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1))) ENCARG(cons_*(0, 0)) -> c5(*'(0, 0), ENCARG(0)) ENCARG(cons_*(cons_p(z0), 0)) -> c5(*'(p(encArg(z0)), 0), ENCARG(cons_p(z0))) ENCARG(cons_*(cons_s(z0), 0)) -> c5(*'(s(encArg(z0)), 0), ENCARG(cons_s(z0))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1, c3_1, c11_1, c5_2 ---------------------------------------- (265) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing nodes: ENCARG(cons_*(0, 0)) -> c5(*'(0, 0), ENCARG(0)) ---------------------------------------- (266) Obligation: Complexity Dependency Tuples Problem Rules: encArg(0) -> 0 encArg(cons_p(z0)) -> p(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_+(z0, z1)) -> +(encArg(z0), encArg(z1)) encArg(cons_minus(z0)) -> minus(encArg(z0)) encArg(cons_*(z0, z1)) -> *(encArg(z0), encArg(z1)) p(s(z0)) -> z0 s(p(z0)) -> z0 +(0, z0) -> z0 +(s(z0), z1) -> s(+(z0, z1)) +(p(z0), z1) -> p(+(z0, z1)) minus(0) -> 0 minus(s(z0)) -> p(minus(z0)) minus(p(z0)) -> s(minus(z0)) *(0, z0) -> 0 *(s(z0), z1) -> +(*(z0, z1), z1) *(p(z0), z1) -> +(*(z0, z1), minus(z1)) Tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 ENCARG(cons_p(cons_s(z0))) -> c1(P(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_p(z0))) -> c2(S(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_p(z0), x1)) -> c3(+'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_+(cons_s(z0), x1)) -> c3(+'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_+(0, x1)) -> c3(+'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_minus(cons_p(z0))) -> c4(MINUS(p(encArg(z0))), ENCARG(cons_p(z0))) ENCARG(cons_minus(cons_s(z0))) -> c4(MINUS(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_minus(0)) -> c4(MINUS(0)) ENCARG(cons_*(cons_p(z0), x1)) -> c5(*'(p(encArg(z0)), encArg(x1)), ENCARG(cons_p(z0)), ENCARG(x1)) ENCARG(cons_*(cons_s(z0), x1)) -> c5(*'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_*(0, x1)) -> c5(ENCARG(x1)) +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(s(0), z0) -> c21(+'(0, z0)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) ENCODE_P(cons_p(z0)) -> c(P(p(encArg(z0)))) ENCODE_P(cons_s(z0)) -> c(P(s(encArg(z0)))) ENCODE_P(cons_+(z0, z1)) -> c(P(+(encArg(z0), encArg(z1)))) ENCODE_P(cons_minus(z0)) -> c(P(minus(encArg(z0)))) ENCODE_P(cons_*(z0, z1)) -> c(P(*(encArg(z0), encArg(z1)))) ENCODE_S(cons_p(z0)) -> c(S(p(encArg(z0)))) ENCODE_S(cons_s(z0)) -> c(S(s(encArg(z0)))) ENCODE_S(cons_+(z0, z1)) -> c(S(+(encArg(z0), encArg(z1)))) ENCODE_S(cons_minus(z0)) -> c(S(minus(encArg(z0)))) ENCODE_S(cons_*(z0, z1)) -> c(S(*(encArg(z0), encArg(z1)))) ENCODE_+(x0, 0) -> c(+'(encArg(x0), 0)) ENCODE_+(x0, cons_p(z0)) -> c(+'(encArg(x0), p(encArg(z0)))) ENCODE_+(x0, cons_s(z0)) -> c(+'(encArg(x0), s(encArg(z0)))) ENCODE_+(x0, cons_+(z0, z1)) -> c(+'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_+(x0, cons_minus(z0)) -> c(+'(encArg(x0), minus(encArg(z0)))) ENCODE_+(x0, cons_*(z0, z1)) -> c(+'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_+(0, x1) -> c(+'(0, encArg(x1))) ENCODE_+(cons_p(z0), x1) -> c(+'(p(encArg(z0)), encArg(x1))) ENCODE_+(cons_s(z0), x1) -> c(+'(s(encArg(z0)), encArg(x1))) ENCODE_+(cons_+(z0, z1), x1) -> c(+'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_+(cons_minus(z0), x1) -> c(+'(minus(encArg(z0)), encArg(x1))) ENCODE_+(cons_*(z0, z1), x1) -> c(+'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_MINUS(cons_p(z0)) -> c(MINUS(p(encArg(z0)))) ENCODE_MINUS(cons_s(z0)) -> c(MINUS(s(encArg(z0)))) ENCODE_MINUS(cons_+(z0, z1)) -> c(MINUS(+(encArg(z0), encArg(z1)))) ENCODE_MINUS(cons_minus(z0)) -> c(MINUS(minus(encArg(z0)))) ENCODE_MINUS(cons_*(z0, z1)) -> c(MINUS(*(encArg(z0), encArg(z1)))) ENCODE_*(x0, 0) -> c(*'(encArg(x0), 0)) ENCODE_*(x0, cons_p(z0)) -> c(*'(encArg(x0), p(encArg(z0)))) ENCODE_*(x0, cons_s(z0)) -> c(*'(encArg(x0), s(encArg(z0)))) ENCODE_*(x0, cons_+(z0, z1)) -> c(*'(encArg(x0), +(encArg(z0), encArg(z1)))) ENCODE_*(x0, cons_minus(z0)) -> c(*'(encArg(x0), minus(encArg(z0)))) ENCODE_*(x0, cons_*(z0, z1)) -> c(*'(encArg(x0), *(encArg(z0), encArg(z1)))) ENCODE_*(cons_p(z0), x1) -> c(*'(p(encArg(z0)), encArg(x1))) ENCODE_*(cons_s(z0), x1) -> c(*'(s(encArg(z0)), encArg(x1))) ENCODE_*(cons_+(z0, z1), x1) -> c(*'(+(encArg(z0), encArg(z1)), encArg(x1))) ENCODE_*(cons_minus(z0), x1) -> c(*'(minus(encArg(z0)), encArg(x1))) ENCODE_*(cons_*(z0, z1), x1) -> c(*'(*(encArg(z0), encArg(z1)), encArg(x1))) ENCARG(cons_p(cons_p(cons_p(z0)))) -> c1(P(p(p(encArg(z0)))), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_p(cons_p(cons_s(z0)))) -> c1(P(p(s(encArg(z0)))), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_p(cons_p(cons_+(z0, z1)))) -> c1(P(p(+(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_p(cons_p(cons_minus(z0)))) -> c1(P(p(minus(encArg(z0)))), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_p(cons_p(cons_*(z0, z1)))) -> c1(P(p(*(encArg(z0), encArg(z1)))), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_p(cons_+(x0, 0))) -> c1(P(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_p(cons_+(x0, cons_p(z0)))) -> c1(P(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_p(cons_+(x0, cons_s(z0)))) -> c1(P(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_p(cons_+(x0, cons_+(z0, z1)))) -> c1(P(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_+(x0, cons_minus(z0)))) -> c1(P(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_p(cons_+(x0, cons_*(z0, z1)))) -> c1(P(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_+(0, x1))) -> c1(P(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_p(cons_+(cons_p(z0), x1))) -> c1(P(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_p(cons_+(cons_s(z0), x1))) -> c1(P(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_p(cons_+(cons_+(z0, z1), x1))) -> c1(P(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_+(cons_minus(z0), x1))) -> c1(P(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_p(cons_+(cons_*(z0, z1), x1))) -> c1(P(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_p(cons_minus(cons_p(z0)))) -> c1(P(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_p(cons_minus(cons_s(z0)))) -> c1(P(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_p(cons_minus(cons_+(z0, z1)))) -> c1(P(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_p(cons_minus(cons_minus(z0)))) -> c1(P(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_p(cons_minus(cons_*(z0, z1)))) -> c1(P(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_p(cons_minus(0))) -> c9(P(minus(0))) ENCARG(cons_p(cons_minus(0))) -> c9(ENCARG(cons_minus(0))) ENCARG(cons_p(cons_*(x0, 0))) -> c1(P(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_p(cons_*(x0, cons_p(z0)))) -> c1(P(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_p(cons_*(x0, cons_s(z0)))) -> c1(P(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_p(cons_*(x0, cons_+(z0, z1)))) -> c1(P(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_p(cons_*(x0, cons_minus(z0)))) -> c1(P(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_p(cons_*(x0, cons_*(z0, z1)))) -> c1(P(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_p(cons_*(0, x1))) -> c1(P(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_p(cons_*(cons_p(z0), x1))) -> c1(P(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_p(cons_*(cons_s(z0), x1))) -> c1(P(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_p(cons_*(cons_+(z0, z1), x1))) -> c1(P(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_p(cons_*(cons_minus(z0), x1))) -> c1(P(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_p(cons_*(cons_*(z0, z1), x1))) -> c1(P(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_s(cons_p(z0)))) -> c2(S(s(p(encArg(z0)))), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_s(cons_s(cons_s(z0)))) -> c2(S(s(s(encArg(z0)))), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_s(cons_s(cons_+(z0, z1)))) -> c2(S(s(+(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_s(cons_s(cons_minus(z0)))) -> c2(S(s(minus(encArg(z0)))), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_s(cons_s(cons_*(z0, z1)))) -> c2(S(s(*(encArg(z0), encArg(z1)))), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_s(cons_+(x0, 0))) -> c2(S(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_s(cons_+(x0, cons_p(z0)))) -> c2(S(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_s(cons_+(x0, cons_s(z0)))) -> c2(S(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_s(cons_+(x0, cons_+(z0, z1)))) -> c2(S(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_+(x0, cons_minus(z0)))) -> c2(S(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_s(cons_+(x0, cons_*(z0, z1)))) -> c2(S(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_+(0, x1))) -> c2(S(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_s(cons_+(cons_p(z0), x1))) -> c2(S(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_s(cons_+(cons_s(z0), x1))) -> c2(S(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_s(cons_+(cons_+(z0, z1), x1))) -> c2(S(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_+(cons_minus(z0), x1))) -> c2(S(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_s(cons_+(cons_*(z0, z1), x1))) -> c2(S(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_s(cons_minus(cons_p(z0)))) -> c2(S(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_s(cons_minus(cons_s(z0)))) -> c2(S(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_s(cons_minus(cons_+(z0, z1)))) -> c2(S(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_s(cons_minus(cons_minus(z0)))) -> c2(S(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_s(cons_minus(cons_*(z0, z1)))) -> c2(S(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_s(cons_minus(0))) -> c10(S(minus(0))) ENCARG(cons_s(cons_minus(0))) -> c10(ENCARG(cons_minus(0))) ENCARG(cons_s(cons_*(x0, 0))) -> c2(S(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_s(cons_*(x0, cons_p(z0)))) -> c2(S(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_s(cons_*(x0, cons_s(z0)))) -> c2(S(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_s(cons_*(x0, cons_+(z0, z1)))) -> c2(S(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_s(cons_*(x0, cons_minus(z0)))) -> c2(S(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_s(cons_*(x0, cons_*(z0, z1)))) -> c2(S(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_s(cons_*(0, x1))) -> c2(S(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_s(cons_*(cons_p(z0), x1))) -> c2(S(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_s(cons_*(cons_s(z0), x1))) -> c2(S(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_s(cons_*(cons_+(z0, z1), x1))) -> c2(S(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_s(cons_*(cons_minus(z0), x1))) -> c2(S(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_s(cons_*(cons_*(z0, z1), x1))) -> c2(S(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_+(x0, cons_p(cons_p(z0)))) -> c3(+'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_+(x0, cons_p(cons_s(z0)))) -> c3(+'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_+(x0, cons_p(cons_+(z0, z1)))) -> c3(+'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_p(cons_minus(z0)))) -> c3(+'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_+(x0, cons_p(cons_*(z0, z1)))) -> c3(+'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_p(x1))) -> c3(+'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_s(z0), cons_p(x1))) -> c3(+'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_p(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_minus(z0), cons_p(x1))) -> c3(+'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_p(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_p(0))) -> c3(+'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_p(x1))) -> c3(+'(0, p(encArg(x1))), ENCARG(cons_p(x1))) ENCARG(cons_+(x0, cons_s(cons_p(z0)))) -> c3(+'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_+(x0, cons_s(cons_s(z0)))) -> c3(+'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_+(x0, cons_s(cons_+(z0, z1)))) -> c3(+'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_s(cons_minus(z0)))) -> c3(+'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_+(x0, cons_s(cons_*(z0, z1)))) -> c3(+'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_s(x1))) -> c3(+'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_s(z0), cons_s(x1))) -> c3(+'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_s(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_minus(z0), cons_s(x1))) -> c3(+'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_s(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_s(0))) -> c3(+'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_+(0, cons_s(x1))) -> c3(+'(0, s(encArg(x1))), ENCARG(cons_s(x1))) ENCARG(cons_+(x0, cons_+(x1, 0))) -> c3(+'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_+(x0, cons_+(x1, cons_p(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_s(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_+(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_+(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_+(0, x2))) -> c3(+'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_+(x0, cons_+(cons_p(z0), x2))) -> c3(+'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_s(z0), x2))) -> c3(+'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_+(cons_minus(z0), x2))) -> c3(+'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_+(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_+(x1, x2))) -> c3(+'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_+(x1, x2))) -> c3(+'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_+(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_+(x1, x2))) -> c3(+'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_+(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(0, cons_+(x1, x2))) -> c3(+'(0, +(encArg(x1), encArg(x2))), ENCARG(cons_+(x1, x2))) ENCARG(cons_+(x0, cons_minus(0))) -> c3(+'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_+(x0, cons_minus(cons_p(z0)))) -> c3(+'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_+(x0, cons_minus(cons_s(z0)))) -> c3(+'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_+(x0, cons_minus(cons_+(z0, z1)))) -> c3(+'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_minus(cons_minus(z0)))) -> c3(+'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_+(x0, cons_minus(cons_*(z0, z1)))) -> c3(+'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_+(cons_p(z0), cons_minus(x1))) -> c3(+'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_s(z0), cons_minus(x1))) -> c3(+'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_+(z0, z1), cons_minus(x1))) -> c3(+'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_minus(z0), cons_minus(x1))) -> c3(+'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_+(cons_*(z0, z1), cons_minus(x1))) -> c3(+'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_+(0, cons_minus(x1))) -> c3(+'(0, minus(encArg(x1))), ENCARG(cons_minus(x1))) ENCARG(cons_+(x0, cons_*(x1, 0))) -> c3(+'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_+(x0, cons_*(x1, cons_p(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_s(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_+(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_+(x0, cons_*(x1, cons_minus(z0)))) -> c3(+'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_+(x0, cons_*(x1, cons_*(z0, z1)))) -> c3(+'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_+(x0, cons_*(0, x2))) -> c3(+'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_+(x0, cons_*(cons_p(z0), x2))) -> c3(+'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_s(z0), x2))) -> c3(+'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_+(z0, z1), x2))) -> c3(+'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_+(x0, cons_*(cons_minus(z0), x2))) -> c3(+'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_+(x0, cons_*(cons_*(z0, z1), x2))) -> c3(+'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_+(cons_p(z0), cons_*(x1, x2))) -> c3(+'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_s(z0), cons_*(x1, x2))) -> c3(+'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(z0, z1), cons_*(x1, x2))) -> c3(+'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_minus(z0), cons_*(x1, x2))) -> c3(+'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_*(z0, z1), cons_*(x1, x2))) -> c3(+'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(0, cons_*(x1, x2))) -> c3(+'(0, *(encArg(x1), encArg(x2))), ENCARG(cons_*(x1, x2))) ENCARG(cons_+(cons_+(x0, 0), x2)) -> c3(+'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_p(z0)), x2)) -> c3(+'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_s(z0)), x2)) -> c3(+'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_+(z0, z1)), x2)) -> c3(+'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_minus(z0)), x2)) -> c3(+'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, cons_*(z0, z1)), x2)) -> c3(+'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_+(0, x1), x2)) -> c3(+'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_p(z0), x1), x2)) -> c3(+'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_s(z0), x1), x2)) -> c3(+'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_+(z0, z1), x1), x2)) -> c3(+'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_minus(z0), x1), x2)) -> c3(+'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(cons_*(z0, z1), x1), x2)) -> c3(+'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_+(x0, x1), 0)) -> c3(+'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_+(cons_minus(0), x1)) -> c3(+'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_p(z0)), x1)) -> c3(+'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_s(z0)), x1)) -> c3(+'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_+(z0, z1)), x1)) -> c3(+'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_minus(z0)), x1)) -> c3(+'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_+(cons_minus(cons_*(z0, z1)), x1)) -> c3(+'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_+(cons_minus(x0), 0)) -> c3(+'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) ENCARG(cons_+(cons_*(x0, 0), x2)) -> c3(+'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_p(z0)), x2)) -> c3(+'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_s(z0)), x2)) -> c3(+'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_+(z0, z1)), x2)) -> c3(+'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_minus(z0)), x2)) -> c3(+'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, cons_*(z0, z1)), x2)) -> c3(+'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_+(cons_*(0, x1), x2)) -> c3(+'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_p(z0), x1), x2)) -> c3(+'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_s(z0), x1), x2)) -> c3(+'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_+(z0, z1), x1), x2)) -> c3(+'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_minus(z0), x1), x2)) -> c3(+'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(cons_*(z0, z1), x1), x2)) -> c3(+'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_+(cons_*(x0, x1), 0)) -> c3(+'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1))) ENCARG(cons_+(cons_p(z0), 0)) -> c3(+'(p(encArg(z0)), 0), ENCARG(cons_p(z0))) ENCARG(cons_+(cons_s(z0), 0)) -> c3(+'(s(encArg(z0)), 0), ENCARG(cons_s(z0))) ENCARG(cons_+(0, 0)) -> c3(+'(0, 0)) ENCARG(cons_minus(cons_+(x0, 0))) -> c4(MINUS(+(encArg(x0), 0)), ENCARG(cons_+(x0, 0))) ENCARG(cons_minus(cons_+(x0, cons_p(z0)))) -> c4(MINUS(+(encArg(x0), p(encArg(z0)))), ENCARG(cons_+(x0, cons_p(z0)))) ENCARG(cons_minus(cons_+(x0, cons_s(z0)))) -> c4(MINUS(+(encArg(x0), s(encArg(z0)))), ENCARG(cons_+(x0, cons_s(z0)))) ENCARG(cons_minus(cons_+(x0, cons_+(z0, z1)))) -> c4(MINUS(+(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_+(x0, cons_minus(z0)))) -> c4(MINUS(+(encArg(x0), minus(encArg(z0)))), ENCARG(cons_+(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_+(x0, cons_*(z0, z1)))) -> c4(MINUS(+(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_+(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_+(0, x1))) -> c4(MINUS(+(0, encArg(x1))), ENCARG(cons_+(0, x1))) ENCARG(cons_minus(cons_+(cons_p(z0), x1))) -> c4(MINUS(+(p(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_p(z0), x1))) ENCARG(cons_minus(cons_+(cons_s(z0), x1))) -> c4(MINUS(+(s(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_s(z0), x1))) ENCARG(cons_minus(cons_+(cons_+(z0, z1), x1))) -> c4(MINUS(+(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_+(cons_minus(z0), x1))) -> c4(MINUS(+(minus(encArg(z0)), encArg(x1))), ENCARG(cons_+(cons_minus(z0), x1))) ENCARG(cons_minus(cons_+(cons_*(z0, z1), x1))) -> c4(MINUS(+(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_+(cons_*(z0, z1), x1))) ENCARG(cons_minus(cons_minus(cons_p(z0)))) -> c4(MINUS(minus(p(encArg(z0)))), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_minus(cons_minus(cons_s(z0)))) -> c4(MINUS(minus(s(encArg(z0)))), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_minus(cons_minus(cons_+(z0, z1)))) -> c4(MINUS(minus(+(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_minus(cons_minus(cons_minus(z0)))) -> c4(MINUS(minus(minus(encArg(z0)))), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_minus(cons_minus(cons_*(z0, z1)))) -> c4(MINUS(minus(*(encArg(z0), encArg(z1)))), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_minus(cons_minus(0))) -> c11(MINUS(minus(0))) ENCARG(cons_minus(cons_minus(0))) -> c11(ENCARG(cons_minus(0))) ENCARG(cons_minus(cons_*(x0, 0))) -> c4(MINUS(*(encArg(x0), 0)), ENCARG(cons_*(x0, 0))) ENCARG(cons_minus(cons_*(x0, cons_p(z0)))) -> c4(MINUS(*(encArg(x0), p(encArg(z0)))), ENCARG(cons_*(x0, cons_p(z0)))) ENCARG(cons_minus(cons_*(x0, cons_s(z0)))) -> c4(MINUS(*(encArg(x0), s(encArg(z0)))), ENCARG(cons_*(x0, cons_s(z0)))) ENCARG(cons_minus(cons_*(x0, cons_+(z0, z1)))) -> c4(MINUS(*(encArg(x0), +(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_+(z0, z1)))) ENCARG(cons_minus(cons_*(x0, cons_minus(z0)))) -> c4(MINUS(*(encArg(x0), minus(encArg(z0)))), ENCARG(cons_*(x0, cons_minus(z0)))) ENCARG(cons_minus(cons_*(x0, cons_*(z0, z1)))) -> c4(MINUS(*(encArg(x0), *(encArg(z0), encArg(z1)))), ENCARG(cons_*(x0, cons_*(z0, z1)))) ENCARG(cons_minus(cons_*(0, x1))) -> c4(MINUS(*(0, encArg(x1))), ENCARG(cons_*(0, x1))) ENCARG(cons_minus(cons_*(cons_p(z0), x1))) -> c4(MINUS(*(p(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_p(z0), x1))) ENCARG(cons_minus(cons_*(cons_s(z0), x1))) -> c4(MINUS(*(s(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_s(z0), x1))) ENCARG(cons_minus(cons_*(cons_+(z0, z1), x1))) -> c4(MINUS(*(+(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_+(z0, z1), x1))) ENCARG(cons_minus(cons_*(cons_minus(z0), x1))) -> c4(MINUS(*(minus(encArg(z0)), encArg(x1))), ENCARG(cons_*(cons_minus(z0), x1))) ENCARG(cons_minus(cons_*(cons_*(z0, z1), x1))) -> c4(MINUS(*(*(encArg(z0), encArg(z1)), encArg(x1))), ENCARG(cons_*(cons_*(z0, z1), x1))) ENCARG(cons_*(x0, cons_p(cons_p(z0)))) -> c5(*'(encArg(x0), p(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_p(z0)))) ENCARG(cons_*(x0, cons_p(cons_s(z0)))) -> c5(*'(encArg(x0), p(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_s(z0)))) ENCARG(cons_*(x0, cons_p(cons_+(z0, z1)))) -> c5(*'(encArg(x0), p(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_p(cons_minus(z0)))) -> c5(*'(encArg(x0), p(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_p(cons_minus(z0)))) ENCARG(cons_*(x0, cons_p(cons_*(z0, z1)))) -> c5(*'(encArg(x0), p(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_p(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_p(x1))) -> c5(*'(p(encArg(z0)), p(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_s(z0), cons_p(x1))) -> c5(*'(s(encArg(z0)), p(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_p(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_minus(z0), cons_p(x1))) -> c5(*'(minus(encArg(z0)), p(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_p(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_p(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), p(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_p(0))) -> c5(*'(encArg(x0), p(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_p(x1))) -> c5(ENCARG(cons_p(x1))) ENCARG(cons_*(x0, cons_s(cons_p(z0)))) -> c5(*'(encArg(x0), s(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_p(z0)))) ENCARG(cons_*(x0, cons_s(cons_s(z0)))) -> c5(*'(encArg(x0), s(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_s(z0)))) ENCARG(cons_*(x0, cons_s(cons_+(z0, z1)))) -> c5(*'(encArg(x0), s(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_s(cons_minus(z0)))) -> c5(*'(encArg(x0), s(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_s(cons_minus(z0)))) ENCARG(cons_*(x0, cons_s(cons_*(z0, z1)))) -> c5(*'(encArg(x0), s(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_s(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_s(x1))) -> c5(*'(p(encArg(z0)), s(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_s(z0), cons_s(x1))) -> c5(*'(s(encArg(z0)), s(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_s(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_minus(z0), cons_s(x1))) -> c5(*'(minus(encArg(z0)), s(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_s(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_s(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), s(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_s(x1))) ENCARG(cons_*(x0, cons_s(0))) -> c5(*'(encArg(x0), s(0)), ENCARG(x0)) ENCARG(cons_*(0, cons_s(x1))) -> c5(ENCARG(cons_s(x1))) ENCARG(cons_*(x0, cons_+(x1, 0))) -> c5(*'(encArg(x0), +(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_+(x1, 0))) ENCARG(cons_*(x0, cons_+(x1, cons_p(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_p(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_s(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_s(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_+(z0, z1)))) -> c5(*'(encArg(x0), +(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_+(x1, cons_minus(z0)))) -> c5(*'(encArg(x0), +(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_+(x1, cons_minus(z0)))) ENCARG(cons_*(x0, cons_+(x1, cons_*(z0, z1)))) -> c5(*'(encArg(x0), +(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_+(x1, cons_*(z0, z1)))) ENCARG(cons_*(x0, cons_+(0, x2))) -> c5(*'(encArg(x0), +(0, encArg(x2))), ENCARG(x0), ENCARG(cons_+(0, x2))) ENCARG(cons_*(x0, cons_+(cons_p(z0), x2))) -> c5(*'(encArg(x0), +(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_p(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_s(z0), x2))) -> c5(*'(encArg(x0), +(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_s(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_+(z0, z1), x2))) -> c5(*'(encArg(x0), +(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_+(z0, z1), x2))) ENCARG(cons_*(x0, cons_+(cons_minus(z0), x2))) -> c5(*'(encArg(x0), +(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_minus(z0), x2))) ENCARG(cons_*(x0, cons_+(cons_*(z0, z1), x2))) -> c5(*'(encArg(x0), +(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_+(cons_*(z0, z1), x2))) ENCARG(cons_*(cons_p(z0), cons_+(x1, x2))) -> c5(*'(p(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_s(z0), cons_+(x1, x2))) -> c5(*'(s(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_+(z0, z1), cons_+(x1, x2))) -> c5(*'(+(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_minus(z0), cons_+(x1, x2))) -> c5(*'(minus(encArg(z0)), +(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(cons_*(z0, z1), cons_+(x1, x2))) -> c5(*'(*(encArg(z0), encArg(z1)), +(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_+(x1, x2))) ENCARG(cons_*(0, cons_+(x1, x2))) -> c5(ENCARG(cons_+(x1, x2))) ENCARG(cons_*(x0, cons_minus(0))) -> c5(*'(encArg(x0), minus(0)), ENCARG(x0), ENCARG(cons_minus(0))) ENCARG(cons_*(x0, cons_minus(cons_p(z0)))) -> c5(*'(encArg(x0), minus(p(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_p(z0)))) ENCARG(cons_*(x0, cons_minus(cons_s(z0)))) -> c5(*'(encArg(x0), minus(s(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_s(z0)))) ENCARG(cons_*(x0, cons_minus(cons_+(z0, z1)))) -> c5(*'(encArg(x0), minus(+(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_minus(cons_minus(z0)))) -> c5(*'(encArg(x0), minus(minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_minus(cons_minus(z0)))) ENCARG(cons_*(x0, cons_minus(cons_*(z0, z1)))) -> c5(*'(encArg(x0), minus(*(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_minus(cons_*(z0, z1)))) ENCARG(cons_*(cons_p(z0), cons_minus(x1))) -> c5(*'(p(encArg(z0)), minus(encArg(x1))), ENCARG(cons_p(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_s(z0), cons_minus(x1))) -> c5(*'(s(encArg(z0)), minus(encArg(x1))), ENCARG(cons_s(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_+(z0, z1), cons_minus(x1))) -> c5(*'(+(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_+(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_minus(z0), cons_minus(x1))) -> c5(*'(minus(encArg(z0)), minus(encArg(x1))), ENCARG(cons_minus(z0)), ENCARG(cons_minus(x1))) ENCARG(cons_*(cons_*(z0, z1), cons_minus(x1))) -> c5(*'(*(encArg(z0), encArg(z1)), minus(encArg(x1))), ENCARG(cons_*(z0, z1)), ENCARG(cons_minus(x1))) ENCARG(cons_*(0, cons_minus(x1))) -> c5(ENCARG(cons_minus(x1))) ENCARG(cons_*(x0, cons_*(x1, 0))) -> c5(*'(encArg(x0), *(encArg(x1), 0)), ENCARG(x0), ENCARG(cons_*(x1, 0))) ENCARG(cons_*(x0, cons_*(x1, cons_p(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), p(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_p(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_s(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), s(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_s(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_+(z0, z1)))) -> c5(*'(encArg(x0), *(encArg(x1), +(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_+(z0, z1)))) ENCARG(cons_*(x0, cons_*(x1, cons_minus(z0)))) -> c5(*'(encArg(x0), *(encArg(x1), minus(encArg(z0)))), ENCARG(x0), ENCARG(cons_*(x1, cons_minus(z0)))) ENCARG(cons_*(x0, cons_*(x1, cons_*(z0, z1)))) -> c5(*'(encArg(x0), *(encArg(x1), *(encArg(z0), encArg(z1)))), ENCARG(x0), ENCARG(cons_*(x1, cons_*(z0, z1)))) ENCARG(cons_*(x0, cons_*(0, x2))) -> c5(*'(encArg(x0), *(0, encArg(x2))), ENCARG(x0), ENCARG(cons_*(0, x2))) ENCARG(cons_*(x0, cons_*(cons_p(z0), x2))) -> c5(*'(encArg(x0), *(p(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_p(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_s(z0), x2))) -> c5(*'(encArg(x0), *(s(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_s(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_+(z0, z1), x2))) -> c5(*'(encArg(x0), *(+(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_+(z0, z1), x2))) ENCARG(cons_*(x0, cons_*(cons_minus(z0), x2))) -> c5(*'(encArg(x0), *(minus(encArg(z0)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_minus(z0), x2))) ENCARG(cons_*(x0, cons_*(cons_*(z0, z1), x2))) -> c5(*'(encArg(x0), *(*(encArg(z0), encArg(z1)), encArg(x2))), ENCARG(x0), ENCARG(cons_*(cons_*(z0, z1), x2))) ENCARG(cons_*(cons_p(z0), cons_*(x1, x2))) -> c5(*'(p(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_p(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_s(z0), cons_*(x1, x2))) -> c5(*'(s(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_s(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_+(z0, z1), cons_*(x1, x2))) -> c5(*'(+(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_+(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_minus(z0), cons_*(x1, x2))) -> c5(*'(minus(encArg(z0)), *(encArg(x1), encArg(x2))), ENCARG(cons_minus(z0)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_*(z0, z1), cons_*(x1, x2))) -> c5(*'(*(encArg(z0), encArg(z1)), *(encArg(x1), encArg(x2))), ENCARG(cons_*(z0, z1)), ENCARG(cons_*(x1, x2))) ENCARG(cons_*(0, cons_*(x1, x2))) -> c5(ENCARG(cons_*(x1, x2))) ENCARG(cons_*(cons_+(x0, 0), x2)) -> c5(*'(+(encArg(x0), 0), encArg(x2)), ENCARG(cons_+(x0, 0)), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_p(z0)), x2)) -> c5(*'(+(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_s(z0)), x2)) -> c5(*'(+(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_+(z0, z1)), x2)) -> c5(*'(+(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_minus(z0)), x2)) -> c5(*'(+(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_+(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, cons_*(z0, z1)), x2)) -> c5(*'(+(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_+(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_*(cons_+(0, x1), x2)) -> c5(*'(+(0, encArg(x1)), encArg(x2)), ENCARG(cons_+(0, x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_p(z0), x1), x2)) -> c5(*'(+(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_s(z0), x1), x2)) -> c5(*'(+(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_+(z0, z1), x1), x2)) -> c5(*'(+(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_minus(z0), x1), x2)) -> c5(*'(+(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(cons_*(z0, z1), x1), x2)) -> c5(*'(+(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_+(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_*(cons_+(x0, x1), 0)) -> c5(*'(+(encArg(x0), encArg(x1)), 0), ENCARG(cons_+(x0, x1))) ENCARG(cons_*(cons_minus(0), x1)) -> c5(*'(minus(0), encArg(x1)), ENCARG(cons_minus(0)), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_p(z0)), x1)) -> c5(*'(minus(p(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_p(z0))), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_s(z0)), x1)) -> c5(*'(minus(s(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_s(z0))), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_+(z0, z1)), x1)) -> c5(*'(minus(+(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_+(z0, z1))), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_minus(z0)), x1)) -> c5(*'(minus(minus(encArg(z0))), encArg(x1)), ENCARG(cons_minus(cons_minus(z0))), ENCARG(x1)) ENCARG(cons_*(cons_minus(cons_*(z0, z1)), x1)) -> c5(*'(minus(*(encArg(z0), encArg(z1))), encArg(x1)), ENCARG(cons_minus(cons_*(z0, z1))), ENCARG(x1)) ENCARG(cons_*(cons_minus(x0), 0)) -> c5(*'(minus(encArg(x0)), 0), ENCARG(cons_minus(x0))) ENCARG(cons_*(cons_*(x0, 0), x2)) -> c5(*'(*(encArg(x0), 0), encArg(x2)), ENCARG(cons_*(x0, 0)), ENCARG(x2)) ENCARG(cons_*(cons_*(x0, cons_p(z0)), x2)) -> c5(*'(*(encArg(x0), p(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_p(z0))), ENCARG(x2)) ENCARG(cons_*(cons_*(x0, cons_s(z0)), x2)) -> c5(*'(*(encArg(x0), s(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_s(z0))), ENCARG(x2)) ENCARG(cons_*(cons_*(x0, cons_+(z0, z1)), x2)) -> c5(*'(*(encArg(x0), +(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_+(z0, z1))), ENCARG(x2)) ENCARG(cons_*(cons_*(x0, cons_minus(z0)), x2)) -> c5(*'(*(encArg(x0), minus(encArg(z0))), encArg(x2)), ENCARG(cons_*(x0, cons_minus(z0))), ENCARG(x2)) ENCARG(cons_*(cons_*(x0, cons_*(z0, z1)), x2)) -> c5(*'(*(encArg(x0), *(encArg(z0), encArg(z1))), encArg(x2)), ENCARG(cons_*(x0, cons_*(z0, z1))), ENCARG(x2)) ENCARG(cons_*(cons_*(0, x1), x2)) -> c5(*'(*(0, encArg(x1)), encArg(x2)), ENCARG(cons_*(0, x1)), ENCARG(x2)) ENCARG(cons_*(cons_*(cons_p(z0), x1), x2)) -> c5(*'(*(p(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_p(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_*(cons_s(z0), x1), x2)) -> c5(*'(*(s(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_s(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_*(cons_+(z0, z1), x1), x2)) -> c5(*'(*(+(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_+(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_*(cons_*(cons_minus(z0), x1), x2)) -> c5(*'(*(minus(encArg(z0)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_minus(z0), x1)), ENCARG(x2)) ENCARG(cons_*(cons_*(cons_*(z0, z1), x1), x2)) -> c5(*'(*(*(encArg(z0), encArg(z1)), encArg(x1)), encArg(x2)), ENCARG(cons_*(cons_*(z0, z1), x1)), ENCARG(x2)) ENCARG(cons_*(cons_*(x0, x1), 0)) -> c5(*'(*(encArg(x0), encArg(x1)), 0), ENCARG(cons_*(x0, x1))) ENCARG(cons_*(cons_p(z0), 0)) -> c5(*'(p(encArg(z0)), 0), ENCARG(cons_p(z0))) ENCARG(cons_*(cons_s(z0), 0)) -> c5(*'(s(encArg(z0)), 0), ENCARG(cons_s(z0))) S tuples: P(s(z0)) -> c12 S(p(z0)) -> c13 +'(0, z0) -> c14 MINUS(0) -> c17 +'(s(s(z0)), z1) -> c15(S(s(+(z0, z1))), +'(s(z0), z1)) +'(s(x0), x1) -> c15(+'(x0, x1)) +'(s(0), z0) -> c6(S(z0)) +'(s(0), z0) -> c6(+'(0, z0)) +'(p(p(z0)), z1) -> c16(P(p(+(z0, z1))), +'(p(z0), z1)) +'(p(x0), x1) -> c16(+'(x0, x1)) +'(p(0), z0) -> c7(P(z0)) +'(p(0), z0) -> c7(+'(0, z0)) MINUS(s(s(z0))) -> c18(P(p(minus(z0))), MINUS(s(z0))) MINUS(s(x0)) -> c18(MINUS(x0)) MINUS(s(0)) -> c18(MINUS(0)) MINUS(p(p(z0))) -> c19(S(s(minus(z0))), MINUS(p(z0))) MINUS(p(x0)) -> c19(MINUS(x0)) MINUS(p(0)) -> c19(MINUS(0)) *'(s(s(z0)), z1) -> c21(+'(+(*(z0, z1), z1), z1), *'(s(z0), z1)) *'(s(x0), x1) -> c21(*'(x0, x1)) *'(p(x0), 0) -> c22(+'(*(x0, 0), 0), *'(x0, 0), MINUS(0)) *'(p(x0), s(z0)) -> c22(+'(*(x0, s(z0)), p(minus(z0))), *'(x0, s(z0)), MINUS(s(z0))) *'(p(x0), p(z0)) -> c22(+'(*(x0, p(z0)), s(minus(z0))), *'(x0, p(z0)), MINUS(p(z0))) *'(p(p(z0)), z1) -> c22(+'(+(*(z0, z1), minus(z1)), minus(z1)), *'(p(z0), z1), MINUS(z1)) *'(p(x0), x1) -> c22(*'(x0, x1)) K tuples: *'(s(0), z0) -> c21(+'(0, z0)) *'(p(0), z0) -> c8(+'(0, minus(z0))) *'(p(0), z0) -> c8(MINUS(z0)) Defined Rule Symbols: encArg_1, p_1, s_1, +_2, minus_1, *_2 Defined Pair Symbols: P_1, S_1, +'_2, MINUS_1, ENCARG_1, *'_2, ENCODE_P_1, ENCODE_S_1, ENCODE_+_2, ENCODE_MINUS_1, ENCODE_*_2 Compound Symbols: c12, c13, c14, c17, c1_2, c2_2, c3_3, c3_2, c4_2, c4_1, c5_3, c5_1, c15_2, c15_1, c6_1, c16_2, c16_1, c7_1, c18_2, c18_1, c19_2, c19_1, c21_2, c21_1, c22_3, c22_1, c8_1, c_1, c9_1, c10_1, c3_1, c11_1, c5_2